Skip to content
Snippets Groups Projects
Commit a05617a6 authored by Don Kjer's avatar Don Kjer
Browse files

svn merge -r 126003:126087 ...

parent e588d1f2
No related branches found
No related tags found
No related merge requests found
......@@ -1314,6 +1314,8 @@ BOOL LLNetworkData::isValid(U16 param_type, U32 size)
return (size == 16);
case PARAMS_SCULPT:
return (size == 17);
case PARAMS_LIGHT_IMAGE:
return (size == 28);
}
return FALSE;
......@@ -1646,3 +1648,79 @@ bool LLSculptParams::fromLLSD(LLSD& sd)
return false;
}
//============================================================================
LLLightImageParams::LLLightImageParams()
{
mType = PARAMS_LIGHT_IMAGE;
mParams.setVec(F_PI*0.5f, 0.f, 0.f);
}
BOOL LLLightImageParams::pack(LLDataPacker &dp) const
{
dp.packUUID(mLightTexture, "texture");
dp.packVector3(mParams, "params");
return TRUE;
}
BOOL LLLightImageParams::unpack(LLDataPacker &dp)
{
dp.unpackUUID(mLightTexture, "texture");
dp.unpackVector3(mParams, "params");
return TRUE;
}
bool LLLightImageParams::operator==(const LLNetworkData& data) const
{
if (data.mType != PARAMS_LIGHT_IMAGE)
{
return false;
}
const LLLightImageParams *param = (const LLLightImageParams*)&data;
if ( (param->mLightTexture != mLightTexture) )
{
return false;
}
if ( (param->mParams != mParams ) )
{
return false;
}
return true;
}
void LLLightImageParams::copy(const LLNetworkData& data)
{
const LLLightImageParams *param = (LLLightImageParams*)&data;
mLightTexture = param->mLightTexture;
mParams = param->mParams;
}
LLSD LLLightImageParams::asLLSD() const
{
LLSD sd;
sd["texture"] = mLightTexture;
sd["params"] = mParams.getValue();
return sd;
}
bool LLLightImageParams::fromLLSD(LLSD& sd)
{
if (sd.has("texture"))
{
setLightTexture( sd["texture"] );
setParams( sd["params"] );
return true;
}
return false;
}
......@@ -107,7 +107,8 @@ class LLNetworkData
{
PARAMS_FLEXIBLE = 0x10,
PARAMS_LIGHT = 0x20,
PARAMS_SCULPT = 0x30
PARAMS_SCULPT = 0x30,
PARAMS_LIGHT_IMAGE = 0x40,
};
public:
......@@ -267,6 +268,28 @@ class LLSculptParams : public LLNetworkData
U8 getSculptType() { return mSculptType; }
};
class LLLightImageParams : public LLNetworkData
{
protected:
LLUUID mLightTexture;
LLVector3 mParams;
public:
LLLightImageParams();
/*virtual*/ BOOL pack(LLDataPacker &dp) const;
/*virtual*/ BOOL unpack(LLDataPacker &dp);
/*virtual*/ bool operator==(const LLNetworkData& data) const;
/*virtual*/ void copy(const LLNetworkData& data);
LLSD asLLSD() const;
operator LLSD() const { return asLLSD(); }
bool fromLLSD(LLSD& sd);
void setLightTexture(const LLUUID& id) { mLightTexture = id; }
LLUUID getLightTexture() const { return mLightTexture; }
void setParams(const LLVector3& params) { mParams = params; }
LLVector3 getParams() const { return mParams; }
};
class LLPrimitive : public LLXform
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment