BOOL LLTransferSourceParamsAsset::unpackParams(LLDataPacker &dp) { S32 tmp_at; dp.unpackUUID(mAssetID, "AssetID"); dp.unpackS32(tmp_at, "AssetType"); mAssetType = (LLAssetType::EType)tmp_at; return TRUE; }
BOOL LLTransferSourceParamsEstate::unpackParams(LLDataPacker &dp) { S32 tmp_et; dp.unpackUUID(mAgentID, "AgentID"); dp.unpackUUID(mSessionID, "SessionID"); dp.unpackS32(tmp_et, "EstateAssetType"); mEstateAssetType = (EstateAssetType)tmp_et; return TRUE; }
BOOL LLTransferSourceParamsInvItem::unpackParams(LLDataPacker &dp) { S32 tmp_at; dp.unpackUUID(mAgentID, "AgentID"); dp.unpackUUID(mSessionID, "SessionID"); dp.unpackUUID(mOwnerID, "OwnerID"); dp.unpackUUID(mTaskID, "TaskID"); dp.unpackUUID(mItemID, "ItemID"); dp.unpackUUID(mAssetID, "AssetID"); dp.unpackS32(tmp_at, "AssetType"); mAssetType = (LLAssetType::EType)tmp_at; return TRUE; }
bool LLTransferTargetParamsVFile::unpackParams(LLDataPacker& dp) { // if the source provided a new key, assign that to the asset id. if(dp.hasNext()) { LLUUID dummy_id; dp.unpackUUID(dummy_id, "AgentID"); dp.unpackUUID(dummy_id, "SessionID"); dp.unpackUUID(dummy_id, "OwnerID"); dp.unpackUUID(dummy_id, "TaskID"); dp.unpackUUID(dummy_id, "ItemID"); dp.unpackUUID(mAssetID, "AssetID"); S32 dummy_type; dp.unpackS32(dummy_type, "AssetType"); } // if we never got an asset id, this will always fail. if(mAssetID.isNull()) { return false; } return true; }
BOOL LLMultiGesture::deserialize(LLDataPacker& dp) { S32 version; dp.unpackS32(version, "version"); if (version != GESTURE_VERSION) { llwarns << "Bad LLMultiGesture version " << version << " should be " << GESTURE_VERSION << llendl; return FALSE; } dp.unpackU8(mKey, "key"); dp.unpackU32(mMask, "mask"); dp.unpackString(mTrigger, "trigger"); dp.unpackString(mReplaceText, "replace"); S32 count; dp.unpackS32(count, "step_count"); if (count < 0) { llwarns << "Bad LLMultiGesture step count " << count << llendl; return FALSE; } S32 i; for (i = 0; i < count; ++i) { S32 type; dp.unpackS32(type, "step_type"); EStepType step_type = (EStepType)type; switch(step_type) { case STEP_ANIMATION: { LLGestureStepAnimation* step = new LLGestureStepAnimation(); BOOL ok = step->deserialize(dp); if (!ok) return FALSE; mSteps.push_back(step); break; } case STEP_SOUND: { LLGestureStepSound* step = new LLGestureStepSound(); BOOL ok = step->deserialize(dp); if (!ok) return FALSE; mSteps.push_back(step); break; } case STEP_CHAT: { LLGestureStepChat* step = new LLGestureStepChat(); BOOL ok = step->deserialize(dp); if (!ok) return FALSE; mSteps.push_back(step); break; } case STEP_WAIT: { LLGestureStepWait* step = new LLGestureStepWait(); BOOL ok = step->deserialize(dp); if (!ok) return FALSE; mSteps.push_back(step); break; } default: { llwarns << "Bad LLMultiGesture step type " << type << llendl; return FALSE; } } } return TRUE; }