00001 00032 #ifndef LL_LLREGIONPOSITION_H 00033 #define LL_LLREGIONPOSITION_H 00034 00040 #include "v3math.h" 00041 #include "v3dmath.h" 00042 00043 class LLViewerRegion; 00044 00045 class LLRegionPosition 00046 { 00047 private: 00048 LLViewerRegion *mRegionp; 00049 public: 00050 LLVector3 mPositionRegion; 00051 LLRegionPosition(); 00052 LLRegionPosition(LLViewerRegion *regionp, const LLVector3 &position_local); 00053 LLRegionPosition(const LLVector3d &global_position); // From global coords ONLY! 00054 00055 LLViewerRegion* getRegion() const; 00056 void setPositionGlobal(const LLVector3d& global_pos); 00057 LLVector3d getPositionGlobal() const; 00058 const LLVector3& getPositionRegion() const; 00059 const LLVector3 getPositionAgent() const; 00060 00061 00062 void clear() { mRegionp = NULL; mPositionRegion.clearVec(); } 00063 // LLRegionPosition operator+(const LLRegionPosition &pos) const; 00064 }; 00065 00066 #endif // LL_REGION_POSITION_H