LLPolyMesh Class Reference

#include <llpolymesh.h>

Collaboration diagram for LLPolyMesh:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 LLPolyMesh (LLPolyMeshSharedData *shared_data, LLPolyMesh *reference_mesh)
 ~LLPolyMesh ()
const LLVector3getPosition ()
const LLQuaterniongetRotation ()
const LLVector3getScale ()
U32 getNumVertices ()
BOOL hasDetailTexCoords ()
BOOL hasWeights () const
const LLVector3getCoords () const
LLVector3getWritableCoords ()
const LLVector3getNormals () const
const LLVector3getBinormals () const
const LLVector3getBaseNormals () const
const LLVector3getBaseBinormals () const
LLVector3getWritableNormals ()
LLVector3getScaledNormals ()
LLVector3getWritableBinormals ()
LLVector3getScaledBinormals ()
const LLVector2getTexCoords () const
LLVector2getWritableTexCoords ()
const LLVector2getDetailTexCoords () const
const F32getWeights () const
F32getWritableWeights () const
LLVector4getWritableClothingWeights ()
const LLVector4getClothingWeights ()
S32 getNumFaces ()
LLPolyFacegetFaces ()
U32 getNumJointNames ()
std::string * getJointNames ()
LLPolyMorphDatagetMorphData (const char *morph_name)
LLPolyMeshSharedDatagetSharedData () const
LLPolyMeshgetReferenceMesh ()
U32getIndices ()
BOOL isLOD ()
void setAvatar (LLVOAvatar *avatarp)
LLVOAvatargetAvatar ()

Static Public Member Functions

static LLPolyMeshgetMesh (const LLString &name, LLPolyMesh *reference_mesh=NULL)
static void freeAllMeshes ()

Public Attributes

LLDynamicArray
< LLJointRenderData * > 
mJointRenderData
U32 mFaceVertexOffset
U32 mFaceVertexCount
U32 mFaceIndexOffset
U32 mFaceIndexCount
U32 mCurVertexCount

Protected Types

typedef std::map< LLString,
LLPolyMeshSharedData * > 
LLPolyMeshSharedDataTable

Protected Attributes

LLPolyMeshSharedDatamSharedData
F32mVertexData
LLVector3mCoords
LLVector3mScaledNormals
LLVector3mNormals
LLVector3mScaledBinormals
LLVector3mBinormals
LLVector4mClothingWeights
LLVector2mTexCoords
LLPolyMeshmReferenceMesh
LLVOAvatarmAvatarp

Static Protected Attributes

static LLPolyMeshSharedDataTable sGlobalSharedMeshList

Private Member Functions

void initializeForMorph ()

Static Private Member Functions

static void dumpDiagInfo ()


Detailed Description

Definition at line 161 of file llpolymesh.h.


Member Typedef Documentation

Definition at line 365 of file llpolymesh.h.


Constructor & Destructor Documentation

LLPolyMesh::LLPolyMesh ( LLPolyMeshSharedData shared_data,
LLPolyMesh reference_mesh 
)

Definition at line 681 of file llpolymesh.cpp.

References initializeForMorph(), LLPolyMeshSharedData::isLOD(), llassert, mAvatarp, mBinormals, mClothingWeights, mCoords, mNormals, LLPolyMeshSharedData::mNumVertices, mReferenceMesh, mScaledBinormals, mScaledNormals, mSharedData, mTexCoords, mVertexData, and NULL.

Referenced by getMesh().

Here is the call graph for this function:

Here is the caller graph for this function:

LLPolyMesh::~LLPolyMesh (  ) 


Member Function Documentation

LLPolyMesh * LLPolyMesh::getMesh ( const LLString name,
LLPolyMesh reference_mesh = NULL 
) [static]

Definition at line 758 of file llpolymesh.cpp.

References gDirUtilp, get_if_there(), LLDir::getExpandedFilename(), getSharedData(), LL_MAX_PATH, LL_PATH_CHARACTER, LLPolyMesh(), mSharedData, NULL, and sGlobalSharedMeshList.

Referenced by LLVOAvatar::loadMeshNodes().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLPolyMesh::freeAllMeshes (  )  [static]

Definition at line 799 of file llpolymesh.cpp.

References sGlobalSharedMeshList.

Referenced by LLAppViewer::cleanup().

Here is the caller graph for this function:

const LLVector3& LLPolyMesh::getPosition ( void   )  [inline]

Definition at line 185 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mPosition, and mSharedData.

Referenced by LLViewerJointMesh::setMesh().

Here is the caller graph for this function:

const LLQuaternion& LLPolyMesh::getRotation (  )  [inline]

Definition at line 191 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mRotation, and mSharedData.

Referenced by LLViewerJointMesh::setMesh().

Here is the caller graph for this function:

const LLVector3& LLPolyMesh::getScale (  )  [inline]

Definition at line 197 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mScale, and mSharedData.

Referenced by LLViewerJointMesh::setMesh().

Here is the caller graph for this function:

U32 LLPolyMesh::getNumVertices (  )  [inline]

BOOL LLPolyMesh::hasDetailTexCoords (  )  [inline]

Definition at line 212 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mHasDetailTexCoords, and mSharedData.

BOOL LLPolyMesh::hasWeights (  )  const [inline]

Definition at line 218 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mHasWeights, and mSharedData.

Referenced by LLViewerJointMesh::drawShape(), LLViewerJointMesh::setMesh(), and LLViewerJointMesh::updateGeometry().

Here is the caller graph for this function:

const LLVector3* LLPolyMesh::getCoords (  )  const [inline]

Definition at line 224 of file llpolymesh.h.

References mCoords.

Referenced by LLViewerJointMesh::updateFaceData(), LLViewerJointMesh::updateGeometryOriginal(), and LLViewerJointMesh::updateGeometryVectorized().

Here is the caller graph for this function:

LLVector3 * LLPolyMesh::getWritableCoords (  ) 

Definition at line 857 of file llpolymesh.cpp.

References mCoords.

Referenced by LLPolyMorphTarget::apply(), and LLPolyMorphTarget::applyMask().

Here is the caller graph for this function:

const LLVector3* LLPolyMesh::getNormals (  )  const [inline]

Definition at line 232 of file llpolymesh.h.

References mNormals.

Referenced by LLViewerJointMesh::updateFaceData(), LLViewerJointMesh::updateGeometryOriginal(), and LLViewerJointMesh::updateGeometryVectorized().

Here is the caller graph for this function:

const LLVector3* LLPolyMesh::getBinormals (  )  const [inline]

Definition at line 237 of file llpolymesh.h.

References mBinormals.

const LLVector3* LLPolyMesh::getBaseNormals (  )  const [inline]

Definition at line 242 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mBaseNormals, and mSharedData.

const LLVector3* LLPolyMesh::getBaseBinormals (  )  const [inline]

Definition at line 248 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mBaseBinormals, and mSharedData.

LLVector3 * LLPolyMesh::getWritableNormals (  ) 

Definition at line 865 of file llpolymesh.cpp.

References mNormals.

Referenced by LLPolyMorphTarget::apply().

Here is the caller graph for this function:

LLVector3 * LLPolyMesh::getScaledNormals (  ) 

Definition at line 898 of file llpolymesh.cpp.

References mScaledNormals.

Referenced by LLPolyMorphTarget::apply(), and LLPolyMorphTarget::applyMask().

Here is the caller graph for this function:

LLVector3 * LLPolyMesh::getWritableBinormals (  ) 

Definition at line 873 of file llpolymesh.cpp.

References mBinormals.

Referenced by LLPolyMorphTarget::apply().

Here is the caller graph for this function:

LLVector3 * LLPolyMesh::getScaledBinormals (  ) 

Definition at line 906 of file llpolymesh.cpp.

References mScaledBinormals.

Referenced by LLPolyMorphTarget::apply(), and LLPolyMorphTarget::applyMask().

Here is the caller graph for this function:

const LLVector2* LLPolyMesh::getTexCoords (  )  const [inline]

Definition at line 261 of file llpolymesh.h.

References mTexCoords.

Referenced by LLViewerJointMesh::updateFaceData().

Here is the caller graph for this function:

LLVector2 * LLPolyMesh::getWritableTexCoords (  ) 

Definition at line 890 of file llpolymesh.cpp.

References mTexCoords.

Referenced by LLPolyMorphTarget::apply(), and LLPolyMorphTarget::applyMask().

Here is the caller graph for this function:

const LLVector2* LLPolyMesh::getDetailTexCoords (  )  const [inline]

Definition at line 269 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mDetailTexCoords, and mSharedData.

const F32* LLPolyMesh::getWeights (  )  const [inline]

F32 * LLPolyMesh::getWritableWeights (  )  const

Definition at line 974 of file llpolymesh.cpp.

References mSharedData, and LLPolyMeshSharedData::mWeights.

LLVector4 * LLPolyMesh::getWritableClothingWeights (  ) 

Definition at line 882 of file llpolymesh.cpp.

References mClothingWeights.

Referenced by LLPolyMorphTarget::apply(), and LLPolyMorphTarget::applyMask().

Here is the caller graph for this function:

const LLVector4* LLPolyMesh::getClothingWeights (  )  [inline]

Definition at line 284 of file llpolymesh.h.

References mClothingWeights.

Referenced by LLViewerJointMesh::updateFaceData().

Here is the caller graph for this function:

S32 LLPolyMesh::getNumFaces (  )  [inline]

Definition at line 293 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mNumFaces, and mSharedData.

Referenced by LLViewerJointMesh::drawShape(), and LLViewerJointMesh::updateFaceData().

Here is the caller graph for this function:

LLPolyFace* LLPolyMesh::getFaces (  )  [inline]

Definition at line 299 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mFaces, and mSharedData.

Referenced by LLViewerJointMesh::updateFaceData().

Here is the caller graph for this function:

U32 LLPolyMesh::getNumJointNames (  )  [inline]

Definition at line 304 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mNumJointNames, and mSharedData.

Referenced by LLViewerJointMesh::setMesh().

Here is the caller graph for this function:

std::string* LLPolyMesh::getJointNames (  )  [inline]

Definition at line 309 of file llpolymesh.h.

References llassert, LLPolyMeshSharedData::mJointNames, and mSharedData.

Referenced by LLViewerJointMesh::setMesh().

Here is the caller graph for this function:

LLPolyMorphData * LLPolyMesh::getMorphData ( const char *  morph_name  ) 

Definition at line 932 of file llpolymesh.cpp.

References LLPolyMorphData::getName(), LLPolyMeshSharedData::mMorphData, mSharedData, and NULL.

Referenced by LLPolyMorphTarget::setInfo().

Here is the call graph for this function:

Here is the caller graph for this function:

LLPolyMeshSharedData * LLPolyMesh::getSharedData (  )  const

Definition at line 806 of file llpolymesh.cpp.

References mSharedData.

Referenced by getMesh(), and LLViewerJointMesh::updateFaceSizes().

Here is the caller graph for this function:

LLPolyMesh* LLPolyMesh::getReferenceMesh (  )  [inline]

Definition at line 319 of file llpolymesh.h.

References mReferenceMesh.

Referenced by LLViewerJointMesh::updateFaceSizes(), LLViewerJointMesh::updateGeometryVectorized(), and LLViewerJointMesh::uploadJointMatrices().

Here is the caller graph for this function:

U32* LLPolyMesh::getIndices (  )  [inline]

Definition at line 322 of file llpolymesh.h.

References mSharedData, LLPolyMeshSharedData::mTriangleIndices, and NULL.

BOOL LLPolyMesh::isLOD (  )  [inline]

Definition at line 324 of file llpolymesh.h.

References LLPolyMeshSharedData::isLOD(), and mSharedData.

Referenced by LLPolyMorphTarget::apply(), and LLViewerJointMesh::setMesh().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLPolyMesh::setAvatar ( LLVOAvatar avatarp  )  [inline]

Definition at line 326 of file llpolymesh.h.

References mAvatarp.

Referenced by LLVOAvatar::loadMeshNodes().

Here is the caller graph for this function:

LLVOAvatar* LLPolyMesh::getAvatar (  )  [inline]

Definition at line 327 of file llpolymesh.h.

References mAvatarp.

Referenced by LLPolyMorphTarget::setInfo().

Here is the caller graph for this function:

void LLPolyMesh::initializeForMorph (  )  [private]

void LLPolyMesh::dumpDiagInfo (  )  [static, private]


Member Data Documentation

Definition at line 335 of file llpolymesh.h.

Referenced by LLViewerJointMesh::updateFaceSizes().

Definition at line 346 of file llpolymesh.h.

Referenced by LLPolyMesh(), and ~LLPolyMesh().

Definition at line 350 of file llpolymesh.h.

Referenced by getScaledNormals(), initializeForMorph(), LLPolyMesh(), and ~LLPolyMesh().

Definition at line 354 of file llpolymesh.h.

Referenced by getScaledBinormals(), initializeForMorph(), LLPolyMesh(), and ~LLPolyMesh().

Definition at line 362 of file llpolymesh.h.

Referenced by getReferenceMesh(), and LLPolyMesh().

Definition at line 366 of file llpolymesh.h.

Referenced by dumpDiagInfo(), freeAllMeshes(), and getMesh().

Definition at line 369 of file llpolymesh.h.

Referenced by getAvatar(), LLPolyMesh(), and setAvatar().


The documentation for this class was generated from the following files:

Generated on Fri May 16 08:59:47 2008 for SecondLife by  doxygen 1.5.5