diff options
author | Jacek Antonelli | 2008-08-15 23:44:50 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-08-15 23:44:50 -0500 |
commit | 89fe5dab825a62a0e3fd8d248cbc91c65eb2a426 (patch) | |
tree | bcff14b7888d04a2fec799c59369f6095224bd08 /linden/indra/newview/llflexibleobject.h | |
parent | Second Life viewer sources 1.13.3.2 (diff) | |
download | meta-impy-89fe5dab825a62a0e3fd8d248cbc91c65eb2a426.zip meta-impy-89fe5dab825a62a0e3fd8d248cbc91c65eb2a426.tar.gz meta-impy-89fe5dab825a62a0e3fd8d248cbc91c65eb2a426.tar.bz2 meta-impy-89fe5dab825a62a0e3fd8d248cbc91c65eb2a426.tar.xz |
Second Life viewer sources 1.14.0.0
Diffstat (limited to '')
-rw-r--r-- | linden/indra/newview/llflexibleobject.h | 36 |
1 files changed, 5 insertions, 31 deletions
diff --git a/linden/indra/newview/llflexibleobject.h b/linden/indra/newview/llflexibleobject.h index c028adb..9772c57 100644 --- a/linden/indra/newview/llflexibleobject.h +++ b/linden/indra/newview/llflexibleobject.h | |||
@@ -76,6 +76,7 @@ class LLVolumeImplFlexible : public LLVolumeInterface | |||
76 | LLVolumeImplFlexible(LLViewerObject* volume, LLFlexibleObjectData* attributes); | 76 | LLVolumeImplFlexible(LLViewerObject* volume, LLFlexibleObjectData* attributes); |
77 | 77 | ||
78 | // Implements LLVolumeInterface | 78 | // Implements LLVolumeInterface |
79 | U32 getID() const { return mID; } | ||
79 | LLVector3 getFramePosition() const; | 80 | LLVector3 getFramePosition() const; |
80 | LLQuaternion getFrameRotation() const; | 81 | LLQuaternion getFrameRotation() const; |
81 | LLVolumeInterfaceType getInterfaceType() const { return INTERFACE_FLEXIBLE; } | 82 | LLVolumeInterfaceType getInterfaceType() const { return INTERFACE_FLEXIBLE; } |
@@ -90,12 +91,10 @@ class LLVolumeImplFlexible : public LLVolumeInterface | |||
90 | bool isVolumeGlobal() const { return true; } | 91 | bool isVolumeGlobal() const { return true; } |
91 | bool isActive() const { return true; } | 92 | bool isActive() const { return true; } |
92 | const LLMatrix4& getWorldMatrix(LLXformMatrix* xform) const; | 93 | const LLMatrix4& getWorldMatrix(LLXformMatrix* xform) const; |
93 | void updateRelativeXform(BOOL global_volume = FALSE); | 94 | void updateRelativeXform(); |
94 | void doFlexibleUpdate(); // Called to update the simulation | 95 | void doFlexibleUpdate(); // Called to update the simulation |
95 | void doFlexibleRebuild(); // Called to rebuild the geometry | 96 | void doFlexibleRebuild(); // Called to rebuild the geometry |
96 | static void resetUpdateBins(); | 97 | |
97 | static void doFlexibleUpdateBins(); | ||
98 | |||
99 | //void setAttributes( LLFlexibleObjectData ); | 98 | //void setAttributes( LLFlexibleObjectData ); |
100 | void setParentPositionAndRotationDirectly( LLVector3 p, LLQuaternion r ); | 99 | void setParentPositionAndRotationDirectly( LLVector3 p, LLQuaternion r ); |
101 | void setUsingCollisionSphere( bool u ); | 100 | void setUsingCollisionSphere( bool u ); |
@@ -128,10 +127,7 @@ class LLVolumeImplFlexible : public LLVolumeInterface | |||
128 | U32 mFrameNum; | 127 | U32 mFrameNum; |
129 | LLVector3 mCollisionSpherePosition; | 128 | LLVector3 mCollisionSpherePosition; |
130 | F32 mCollisionSphereRadius; | 129 | F32 mCollisionSphereRadius; |
131 | 130 | U32 mID; | |
132 | U64 mLastUpdate; | ||
133 | |||
134 | BOOL mJustShifted; | ||
135 | 131 | ||
136 | //-------------------------------------- | 132 | //-------------------------------------- |
137 | // private methods | 133 | // private methods |
@@ -140,29 +136,7 @@ class LLVolumeImplFlexible : public LLVolumeInterface | |||
140 | 136 | ||
141 | void remapSections(LLFlexibleObjectSection *source, S32 source_sections, | 137 | void remapSections(LLFlexibleObjectSection *source, S32 source_sections, |
142 | LLFlexibleObjectSection *dest, S32 dest_sections); | 138 | LLFlexibleObjectSection *dest, S32 dest_sections); |
143 | 139 | ||
144 | U64 getLastUpdate() const { return mLastUpdate; } | ||
145 | |||
146 | // LOD Bins | ||
147 | struct FlexCompare | ||
148 | { | ||
149 | bool operator()(LLVolumeImplFlexible* a, LLVolumeImplFlexible* b) const | ||
150 | { | ||
151 | U64 a_update = a->getLastUpdate(); | ||
152 | U64 b_update = b->getLastUpdate(); | ||
153 | if (a_update == b_update) | ||
154 | { | ||
155 | return a < b; // compare pointers | ||
156 | } | ||
157 | return a_update < b_update; | ||
158 | } | ||
159 | }; | ||
160 | typedef std::set<LLVolumeImplFlexible*, FlexCompare> lodset_t; | ||
161 | static lodset_t sLODBins[ FLEXIBLE_OBJECT_MAX_LOD ]; | ||
162 | static U64 sCurrentUpdateFrame; | ||
163 | static U32 sDebugInserted; | ||
164 | static U32 sDebugVisible; | ||
165 | |||
166 | public: | 140 | public: |
167 | // Global setting for update rate | 141 | // Global setting for update rate |
168 | static F32 sUpdateFactor; | 142 | static F32 sUpdateFactor; |