summaryrefslogtreecommitdiff
path: root/indra/llmessage/llpartdata.h
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2013-03-13 17:07:22 -0500
committerDave Parks <davep@lindenlab.com>2013-03-13 17:07:22 -0500
commit08ae21f52dbbe6245ac8deee0fdfd5df4d3dba53 (patch)
tree66b939268e3253acea62b8a4a08d1ad8db058d87 /indra/llmessage/llpartdata.h
parent7a71c094b95bbc6b821b93e2be7e18d19c3cff11 (diff)
MAINT-2410 Extra Particle Parameters -- viewer implementation
Reviewed by Kelly and Graham
Diffstat (limited to 'indra/llmessage/llpartdata.h')
-rw-r--r--indra/llmessage/llpartdata.h22
1 files changed, 16 insertions, 6 deletions
diff --git a/indra/llmessage/llpartdata.h b/indra/llmessage/llpartdata.h
index 19207d994d..80a52b79dd 100644
--- a/indra/llmessage/llpartdata.h
+++ b/indra/llmessage/llpartdata.h
@@ -88,7 +88,9 @@ public:
mParameter(0.f)
{
}
+ BOOL unpackLegacy(LLDataPacker &dp);
BOOL unpack(LLDataPacker &dp);
+
BOOL pack(LLDataPacker &dp);
LLSD asLLSD() const;
operator LLSD() const {return asLLSD(); }
@@ -117,6 +119,10 @@ public:
//LL_PART_RANDOM_VEL_MASK = 0x200, // Particles have random velocity shifts"
//LL_PART_TRAIL_MASK = 0x400, // Particles have historical "trails"
+ //sYSTEM SET FLAGS
+ LL_PART_DATA_GLOW = 0x10000,
+ LL_PART_DATA_BLEND = 0x20000,
+
// Viewer side use only!
LL_PART_HUD = 0x40000000,
LL_PART_DEAD_MASK = 0x80000000,
@@ -152,6 +158,9 @@ public:
friend class LLPartSysData;
friend class LLViewerPartSourceScript;
+private:
+ S32 getSize() const;
+
// These are public because I'm really lazy...
public:
U32 mFlags; // Particle state/interpolators in effect
@@ -178,15 +187,13 @@ public:
LLPartSysData();
BOOL unpack(LLDataPacker &dp);
- BOOL pack(LLDataPacker &dp);
-
-
+ BOOL unpackLegacy(LLDataPacker &dp);
BOOL unpackBlock(const S32 block_num);
- BOOL packBlock();
-
- static BOOL packNull();
+
static BOOL isNullPS(const S32 block_num); // Returns FALSE if this is a "NULL" particle system (i.e. no system)
+ bool isLegacyCompatible() const;
+
// Different masks for effects on the source
enum
{
@@ -222,6 +229,9 @@ public:
S32 getdataBlockSize() const;
+private:
+ BOOL unpackSystem(LLDataPacker &dp);
+
public:
// Public because I'm lazy....