aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llviewerobject.h
diff options
context:
space:
mode:
authorJacek Antonelli2008-08-15 23:45:34 -0500
committerJacek Antonelli2008-08-15 23:45:34 -0500
commitcd17687f01420952712a500107e0f93e7ab8d5f8 (patch)
treece48c2b706f2c1176290e39fb555fbdf6648ce01 /linden/indra/newview/llviewerobject.h
parentSecond Life viewer sources 1.19.0.5 (diff)
downloadmeta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.zip
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.gz
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.bz2
meta-impy-cd17687f01420952712a500107e0f93e7ab8d5f8.tar.xz
Second Life viewer sources 1.19.1.0
Diffstat (limited to 'linden/indra/newview/llviewerobject.h')
-rw-r--r--linden/indra/newview/llviewerobject.h30
1 files changed, 14 insertions, 16 deletions
diff --git a/linden/indra/newview/llviewerobject.h b/linden/indra/newview/llviewerobject.h
index 36c6a21..798edf8 100644
--- a/linden/indra/newview/llviewerobject.h
+++ b/linden/indra/newview/llviewerobject.h
@@ -34,7 +34,6 @@
34 34
35#include <map> 35#include <map>
36 36
37#include "linked_lists.h"
38#include "llassetstorage.h" 37#include "llassetstorage.h"
39#include "lldarrayptr.h" 38#include "lldarrayptr.h"
40#include "llhudtext.h" 39#include "llhudtext.h"
@@ -156,8 +155,6 @@ public:
156 // Return codes for processUpdateMessage 155 // Return codes for processUpdateMessage
157 enum { MEDIA_URL_REMOVED = 0x1, MEDIA_URL_ADDED = 0x2, MEDIA_URL_UPDATED = 0x4 }; 156 enum { MEDIA_URL_REMOVED = 0x1, MEDIA_URL_ADDED = 0x2, MEDIA_URL_UPDATED = 0x4 };
158 157
159 enum { CLICK_ACTION_TOUCH = 0, CLICK_ACTION_SIT = 1, CLICK_ACTION_BUY = 2 };
160
161 virtual U32 processUpdateMessage(LLMessageSystem *mesgsys, 158 virtual U32 processUpdateMessage(LLMessageSystem *mesgsys,
162 void **user_data, 159 void **user_data,
163 U32 block_num, 160 U32 block_num,
@@ -196,7 +193,6 @@ public:
196 virtual void updateFaceSize(S32 idx); 193 virtual void updateFaceSize(S32 idx);
197 virtual BOOL updateLOD(); 194 virtual BOOL updateLOD();
198 virtual BOOL setDrawableParent(LLDrawable* parentp); 195 virtual BOOL setDrawableParent(LLDrawable* parentp);
199 virtual BOOL updateLighting(BOOL do_lighting) { return TRUE; };
200 F32 getRotTime() { return mRotTime; } 196 F32 getRotTime() { return mRotTime; }
201 void resetRot(); 197 void resetRot();
202 void applyAngularVelocity(F32 dt); 198 void applyAngularVelocity(F32 dt);
@@ -250,11 +246,11 @@ public:
250 //closest to start. 246 //closest to start.
251 virtual BOOL lineSegmentIntersect(const LLVector3& start, LLVector3& end) const; 247 virtual BOOL lineSegmentIntersect(const LLVector3& start, LLVector3& end) const;
252 248
253 const LLVector3d getPositionGlobal() const; 249 virtual const LLVector3d getPositionGlobal() const;
254 const LLVector3 &getPositionRegion() const; 250 virtual const LLVector3 &getPositionRegion() const;
255 const LLVector3 getPositionEdit() const; 251 virtual const LLVector3 getPositionEdit() const;
256 const LLVector3 &getPositionAgent() const; 252 virtual const LLVector3 &getPositionAgent() const;
257 const LLVector3 getRenderPosition() const; 253 virtual const LLVector3 getRenderPosition() const;
258 254
259 virtual const LLVector3 getPivotPositionAgent() const; // Usually = to getPositionAgent, unless like flex objects it's not 255 virtual const LLVector3 getPivotPositionAgent() const; // Usually = to getPositionAgent, unless like flex objects it's not
260 256
@@ -297,6 +293,7 @@ public:
297 /*virtual*/ S32 setTEShiny(const U8 te, const U8 shiny ); 293 /*virtual*/ S32 setTEShiny(const U8 te, const U8 shiny );
298 /*virtual*/ S32 setTEFullbright(const U8 te, const U8 fullbright ); 294 /*virtual*/ S32 setTEFullbright(const U8 te, const U8 fullbright );
299 /*virtual*/ S32 setTEMediaFlags(const U8 te, const U8 media_flags ); 295 /*virtual*/ S32 setTEMediaFlags(const U8 te, const U8 media_flags );
296 /*virtual*/ S32 setTEGlow(const U8 te, const F32 glow);
300 /*virtual*/ BOOL setMaterial(const U8 material); 297 /*virtual*/ BOOL setMaterial(const U8 material);
301 virtual void setTEImage(const U8 te, LLViewerImage *imagep); // Not derived from LLPrimitive 298 virtual void setTEImage(const U8 te, LLViewerImage *imagep); // Not derived from LLPrimitive
302 LLViewerImage *getTEImage(const U8 te) const; 299 LLViewerImage *getTEImage(const U8 te) const;
@@ -325,6 +322,7 @@ public:
325 322
326 // Create if necessary 323 // Create if necessary
327 LLAudioSource *getAudioSource(const LLUUID& owner_id); 324 LLAudioSource *getAudioSource(const LLUUID& owner_id);
325 bool isAudioSource() {return mAudioSourcep != NULL;}
328 326
329 U8 getMediaType() const; 327 U8 getMediaType() const;
330 void setMediaType(U8 media_type); 328 void setMediaType(U8 media_type);
@@ -454,6 +452,8 @@ public:
454 452
455 virtual S32 getLOD() const { return 3; } 453 virtual S32 getLOD() const { return 3; }
456 virtual U32 getPartitionType() const; 454 virtual U32 getPartitionType() const;
455 virtual void dirtySpatialGroup() const;
456 virtual void dirtyMesh() const;
457 457
458 virtual LLNetworkData* getParameterEntry(U16 param_type) const; 458 virtual LLNetworkData* getParameterEntry(U16 param_type) const;
459 virtual bool setParameterEntry(U16 param_type, const LLNetworkData& new_value, bool local_origin); 459 virtual bool setParameterEntry(U16 param_type, const LLNetworkData& new_value, bool local_origin);
@@ -480,13 +480,14 @@ public:
480 { 480 {
481 LL_VO_CLOUDS = LL_PCODE_APP | 0x20, 481 LL_VO_CLOUDS = LL_PCODE_APP | 0x20,
482 LL_VO_SURFACE_PATCH = LL_PCODE_APP | 0x30, 482 LL_VO_SURFACE_PATCH = LL_PCODE_APP | 0x30,
483 LL_VO_STARS = LL_PCODE_APP | 0x40, 483 //LL_VO_STARS = LL_PCODE_APP | 0x40,
484 LL_VO_SQUARE_TORUS = LL_PCODE_APP | 0x50, 484 LL_VO_SQUARE_TORUS = LL_PCODE_APP | 0x50,
485 LL_VO_SKY = LL_PCODE_APP | 0x60, 485 LL_VO_SKY = LL_PCODE_APP | 0x60,
486 LL_VO_WATER = LL_PCODE_APP | 0x70, 486 LL_VO_WATER = LL_PCODE_APP | 0x70,
487 LL_VO_GROUND = LL_PCODE_APP | 0x80, 487 LL_VO_GROUND = LL_PCODE_APP | 0x80,
488 LL_VO_PART_GROUP = LL_PCODE_APP | 0x90, 488 LL_VO_PART_GROUP = LL_PCODE_APP | 0x90,
489 LL_VO_TRIANGLE_TORUS = LL_PCODE_APP | 0xa0, 489 LL_VO_TRIANGLE_TORUS = LL_PCODE_APP | 0xa0,
490 LL_VO_WL_SKY = LL_PCODE_APP | 0xb0, // should this be moved to 0x40?
490 } EVOType; 491 } EVOType;
491 492
492 child_list_t mChildList; 493 child_list_t mChildList;
@@ -589,7 +590,8 @@ protected:
589 LLVOInventoryListener* mListener; 590 LLVOInventoryListener* mListener;
590 void* mInventoryData; 591 void* mInventoryData;
591 }; 592 };
592 LLLinkedList<LLInventoryCallbackInfo> mInventoryCallbacks; 593 typedef std::list<LLInventoryCallbackInfo*> callback_list_t;
594 callback_list_t mInventoryCallbacks;
593 S16 mInventorySerialNum; 595 S16 mInventorySerialNum;
594 596
595 LLViewerRegion *mRegionp; // Region that this object belongs to. 597 LLViewerRegion *mRegionp; // Region that this object belongs to.
@@ -603,9 +605,6 @@ protected:
603 BOOL mStatic; // Object doesn't move. 605 BOOL mStatic; // Object doesn't move.
604 S32 mNumFaces; 606 S32 mNumFaces;
605 607
606 S32 mLastUpdateFrame; // frames in which an object had last moved for smart coalescing of drawables
607 // (child objects not moving relative to parent)
608
609 F32 mTimeDilation; // Time dilation sent with the object. 608 F32 mTimeDilation; // Time dilation sent with the object.
610 F32 mRotTime; // Amount (in seconds) that object has rotated according to angular velocity (llSetTargetOmega) 609 F32 mRotTime; // Amount (in seconds) that object has rotated according to angular velocity (llSetTargetOmega)
611 LLQuaternion mLastRot; // last rotation received from the simulator 610 LLQuaternion mLastRot; // last rotation received from the simulator
@@ -671,14 +670,13 @@ public:
671 : LLViewerObject(id,type,regionp) 670 : LLViewerObject(id,type,regionp)
672 { mDepth = 0.f; } 671 { mDepth = 0.f; }
673 672
674 virtual BOOL isParticle();
675 virtual F32 getPartSize(S32 idx); 673 virtual F32 getPartSize(S32 idx);
676 virtual void getGeometry(S32 idx, 674 virtual void getGeometry(S32 idx,
677 LLStrider<LLVector3>& verticesp, 675 LLStrider<LLVector3>& verticesp,
678 LLStrider<LLVector3>& normalsp, 676 LLStrider<LLVector3>& normalsp,
679 LLStrider<LLVector2>& texcoordsp, 677 LLStrider<LLVector2>& texcoordsp,
680 LLStrider<LLColor4U>& colorsp, 678 LLStrider<LLColor4U>& colorsp,
681 LLStrider<U32>& indicesp) = 0; 679 LLStrider<U16>& indicesp) = 0;
682 680
683 F32 mDepth; 681 F32 mDepth;
684}; 682};