00001 00032 #ifndef LL_LLWIND_H 00033 #define LL_LLWIND_H 00034 00035 //#include "vmath.h" 00036 #include "llmath.h" 00037 #include "v3math.h" 00038 #include "v3dmath.h" 00039 00040 class LLVector3; 00041 class LLBitPack; 00042 class LLGroupHeader; 00043 00044 00045 class LLWind 00046 { 00047 public: 00048 LLWind(); 00049 ~LLWind(); 00050 void renderVectors(); 00051 LLVector3 getVelocity(const LLVector3 &location); // "location" is region-local 00052 LLVector3 getCloudVelocity(const LLVector3 &location); // "location" is region-local 00053 LLVector3 getVelocityNoisy(const LLVector3 &location, const F32 dim); // "location" is region-local 00054 00055 void decompress(LLBitPack &bitpack, LLGroupHeader *group_headerp); 00056 LLVector3 getAverage(); 00057 void setCloudDensityPointer(F32 *densityp); 00058 00059 void setOriginGlobal(const LLVector3d &origin_global); 00060 private: 00061 S32 mSize; 00062 F32 * mVelX; 00063 F32 * mVelY; 00064 F32 * mCloudVelX; 00065 F32 * mCloudVelY; 00066 F32 * mCloudDensityp; 00067 00068 LLVector3d mOriginGlobal; 00069 void init(); 00070 00071 }; 00072 00073 #endif