LLVOSurfacePatch Class Reference

#include <llvosurfacepatch.h>

Inheritance diagram for LLVOSurfacePatch:

Inheritance graph
[legend]
Collaboration diagram for LLVOSurfacePatch:

Collaboration graph
[legend]

List of all members.

Public Types

enum  { VERTEX_DATA_MASK }

Public Member Functions

 LLVOSurfacePatch (const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp)
void markDead ()
virtual U32 getPartitionType () const
LLDrawablecreateDrawable (LLPipeline *pipeline)
BOOL updateGeometry (LLDrawable *drawable)
BOOL updateLOD ()
void updateFaceSize (S32 idx)
void getGeometry (LLStrider< LLVector3 > &verticesp, LLStrider< LLVector3 > &normalsp, LLStrider< LLColor4U > &colorsp, LLStrider< LLVector2 > &texCoords0p, LLStrider< LLVector2 > &texCoords1p, LLStrider< U16 > &indicesp)
void updateTextures (LLAgent &agent)
void setPixelAreaAndAngle (LLAgent &agent)
void updateSpatialExtents (LLVector3 &newMin, LLVector3 &newMax)
BOOL isActive () const
void setPatch (LLSurfacePatch *patchp)
LLSurfacePatchgetPatch () const
void dirtyPatch ()
void dirtyGeom ()

Static Public Member Functions

static void initClass ()

Public Attributes

BOOL mDirtiedPatch

Static Public Attributes

static F32 sLODFactor = 1.f

Protected Member Functions

 ~LLVOSurfacePatch ()
LLFacePoolgetPool ()
void getGeomSizesMain (const S32 stride, S32 &num_vertices, S32 &num_indices)
void getGeomSizesNorth (const S32 stride, const S32 north_stride, S32 &num_vertices, S32 &num_indices)
void getGeomSizesEast (const S32 stride, const S32 east_stride, S32 &num_vertices, S32 &num_indices)
void updateMainGeometry (LLFace *facep, LLStrider< LLVector3 > &verticesp, LLStrider< LLVector3 > &normalsp, LLStrider< LLColor4U > &colorsp, LLStrider< LLVector2 > &texCoords0p, LLStrider< LLVector2 > &texCoords1p, LLStrider< U16 > &indicesp, U32 &index_offset)
void updateNorthGeometry (LLFace *facep, LLStrider< LLVector3 > &verticesp, LLStrider< LLVector3 > &normalsp, LLStrider< LLColor4U > &colorsp, LLStrider< LLVector2 > &texCoords0p, LLStrider< LLVector2 > &texCoords1p, LLStrider< U16 > &indicesp, U32 &index_offset)
void updateEastGeometry (LLFace *facep, LLStrider< LLVector3 > &verticesp, LLStrider< LLVector3 > &normalsp, LLStrider< LLColor4U > &colorsp, LLStrider< LLVector2 > &texCoords0p, LLStrider< LLVector2 > &texCoords1p, LLStrider< U16 > &indicesp, U32 &index_offset)

Protected Attributes

LLFacePoolmPool
S32 mBaseComp
LLSurfacePatchmPatchp
BOOL mDirtyTexture
BOOL mDirtyTerrain
S32 mLastNorthStride
S32 mLastEastStride
S32 mLastStride
S32 mLastLength


Detailed Description

Definition at line 42 of file llvosurfacepatch.h.


Member Enumeration Documentation

anonymous enum

Enumerator:
VERTEX_DATA_MASK 

Definition at line 47 of file llvosurfacepatch.h.


Constructor & Destructor Documentation

LLVOSurfacePatch::LLVOSurfacePatch ( const LLUUID id,
const LLPCode  pcode,
LLViewerRegion regionp 
)

Definition at line 97 of file llvosurfacepatch.cpp.

References LLViewerObject::mbCanSelect, LLViewerObject::setScale(), and TRUE.

Here is the call graph for this function:

LLVOSurfacePatch::~LLVOSurfacePatch (  )  [protected]

Definition at line 116 of file llvosurfacepatch.cpp.

References mPatchp, and NULL.


Member Function Documentation

void LLVOSurfacePatch::markDead (  )  [virtual]

Reimplemented from LLViewerObject.

Definition at line 122 of file llvosurfacepatch.cpp.

References LLSurfacePatch::clearVObj(), LLViewerObject::markDead(), mPatchp, and NULL.

Here is the call graph for this function:

static void LLVOSurfacePatch::initClass (  )  [static]

U32 LLVOSurfacePatch::getPartitionType (  )  const [virtual]

Reimplemented from LLViewerObject.

Definition at line 928 of file llvosurfacepatch.cpp.

References LLViewerRegion::PARTITION_TERRAIN.

LLDrawable * LLVOSurfacePatch::createDrawable ( LLPipeline pipeline  )  [virtual]

BOOL LLVOSurfacePatch::updateGeometry ( LLDrawable drawable  )  [virtual]

BOOL LLVOSurfacePatch::updateLOD (  )  [virtual]

Reimplemented from LLViewerObject.

Definition at line 277 of file llvosurfacepatch.cpp.

References TRUE.

void LLVOSurfacePatch::updateFaceSize ( S32  idx  )  [virtual]

Reimplemented from LLViewerObject.

Definition at line 254 of file llvosurfacepatch.cpp.

References getGeomSizesEast(), getGeomSizesMain(), getGeomSizesNorth(), llendl, llwarns, LLViewerObject::mDrawable, mLastEastStride, mLastNorthStride, mLastStride, S32, and LLFace::setSize().

Here is the call graph for this function:

void LLVOSurfacePatch::getGeometry ( LLStrider< LLVector3 > &  verticesp,
LLStrider< LLVector3 > &  normalsp,
LLStrider< LLColor4U > &  colorsp,
LLStrider< LLVector2 > &  texCoords0p,
LLStrider< LLVector2 > &  texCoords1p,
LLStrider< U16 > &  indicesp 
)

Definition at line 282 of file llvosurfacepatch.cpp.

References LLFace::getGeomIndex(), LLViewerObject::mDrawable, updateEastGeometry(), updateMainGeometry(), and updateNorthGeometry().

Referenced by LLTerrainPartition::getGeometry().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLVOSurfacePatch::updateTextures ( LLAgent agent  )  [virtual]

Reimplemented from LLViewerObject.

Definition at line 146 of file llvosurfacepatch.cpp.

void LLVOSurfacePatch::setPixelAreaAndAngle ( LLAgent agent  )  [virtual]

Reimplemented from LLViewerObject.

Definition at line 139 of file llvosurfacepatch.cpp.

References LLViewerObject::mAppAngle, and LLViewerObject::mPixelArea.

void LLVOSurfacePatch::updateSpatialExtents ( LLVector3 newMin,
LLVector3 newMax 
) [virtual]

Reimplemented from LLViewerObject.

Definition at line 919 of file llvosurfacepatch.cpp.

References LLViewerObject::getPositionAgent(), LLXform::getScale(), and LLViewerObject::mDrawable.

Here is the call graph for this function:

BOOL LLVOSurfacePatch::isActive ( void   )  const [virtual]

Reimplemented from LLViewerObject.

Definition at line 133 of file llvosurfacepatch.cpp.

References FALSE.

void LLVOSurfacePatch::setPatch ( LLSurfacePatch patchp  ) 

Definition at line 822 of file llvosurfacepatch.cpp.

References dirtyPatch(), and mPatchp.

Here is the call graph for this function:

LLSurfacePatch* LLVOSurfacePatch::getPatch (  )  const [inline]

Definition at line 83 of file llvosurfacepatch.h.

References mPatchp.

Referenced by LLDrawPoolTerrain::renderOwnership().

Here is the caller graph for this function:

void LLVOSurfacePatch::dirtyPatch (  ) 

void LLVOSurfacePatch::dirtyGeom (  ) 

Definition at line 844 of file llvosurfacepatch.cpp.

References gPipeline, LLPipeline::markRebuild(), LLViewerObject::mDrawable, NULL, LLDrawable::REBUILD_ALL, and TRUE.

Referenced by dirtyPatch().

Here is the call graph for this function:

Here is the caller graph for this function:

LLFacePool * LLVOSurfacePatch::getPool (  )  [protected]

Definition at line 151 of file llvosurfacepatch.cpp.

References LLPipeline::getPool(), LLSurface::getSTexture(), LLSurfacePatch::getSurface(), gPipeline, mPatchp, mPool, and LLDrawPool::POOL_TERRAIN.

Referenced by createDrawable().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLVOSurfacePatch::getGeomSizesMain ( const S32  stride,
S32 num_vertices,
S32 num_indices 
) [protected]

Definition at line 854 of file llvosurfacepatch.cpp.

References LLSurface::getGridsPerPatchEdge(), LLSurfacePatch::getSurface(), mPatchp, and S32.

Referenced by updateFaceSize(), and updateMainGeometry().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLVOSurfacePatch::getGeomSizesNorth ( const S32  stride,
const S32  north_stride,
S32 num_vertices,
S32 num_indices 
) [protected]

Definition at line 867 of file llvosurfacepatch.cpp.

References LLSurface::getGridsPerPatchEdge(), LLSurfacePatch::getSurface(), mPatchp, and S32.

Referenced by updateFaceSize().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLVOSurfacePatch::getGeomSizesEast ( const S32  stride,
const S32  east_stride,
S32 num_vertices,
S32 num_indices 
) [protected]

Definition at line 893 of file llvosurfacepatch.cpp.

References LLSurface::getGridsPerPatchEdge(), LLSurfacePatch::getSurface(), mPatchp, and S32.

Referenced by updateFaceSize().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLVOSurfacePatch::updateMainGeometry ( LLFace facep,
LLStrider< LLVector3 > &  verticesp,
LLStrider< LLVector3 > &  normalsp,
LLStrider< LLColor4U > &  colorsp,
LLStrider< LLVector2 > &  texCoords0p,
LLStrider< LLVector2 > &  texCoords1p,
LLStrider< U16 > &  indicesp,
U32 index_offset 
) [protected]

Definition at line 319 of file llvosurfacepatch.cpp.

References LLSurfacePatch::eval(), LLStrider< Object >::get(), getGeomSizesMain(), LLSurface::getGridsPerPatchEdge(), LLSurfacePatch::getPointAgent(), LLSurfacePatch::getSurface(), i, j, LLFace::mCenterAgent, mLastStride, mPatchp, S32, and LLColor4U::white.

Referenced by getGeometry().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLVOSurfacePatch::updateNorthGeometry ( LLFace facep,
LLStrider< LLVector3 > &  verticesp,
LLStrider< LLVector3 > &  normalsp,
LLStrider< LLColor4U > &  colorsp,
LLStrider< LLVector2 > &  texCoords0p,
LLStrider< LLVector2 > &  texCoords1p,
LLStrider< U16 > &  indicesp,
U32 index_offset 
) [protected]

Definition at line 423 of file llvosurfacepatch.cpp.

References LLSurfacePatch::eval(), LLStrider< Object >::get(), LLSurface::getGridsPerPatchEdge(), LLSurfacePatch::getPointAgent(), LLSurfacePatch::getSurface(), i, LLFace::mCenterAgent, mLastNorthStride, mLastStride, mPatchp, S32, and LLColor4U::white.

Referenced by getGeometry().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLVOSurfacePatch::updateEastGeometry ( LLFace facep,
LLStrider< LLVector3 > &  verticesp,
LLStrider< LLVector3 > &  normalsp,
LLStrider< LLColor4U > &  colorsp,
LLStrider< LLVector2 > &  texCoords0p,
LLStrider< LLVector2 > &  texCoords1p,
LLStrider< U16 > &  indicesp,
U32 index_offset 
) [protected]

Definition at line 630 of file llvosurfacepatch.cpp.

References LLSurfacePatch::eval(), LLStrider< Object >::get(), LLSurface::getGridsPerPatchEdge(), LLSurfacePatch::getPointAgent(), LLSurfacePatch::getSurface(), i, LLFace::mCenterAgent, mLastEastStride, mLastStride, mPatchp, S32, and LLColor4U::white.

Referenced by getGeometry().

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

Definition at line 88 of file llvosurfacepatch.h.

Referenced by dirtyPatch().

Definition at line 92 of file llvosurfacepatch.h.

Referenced by getPool().

Definition at line 94 of file llvosurfacepatch.h.

Referenced by createDrawable(), and updateGeometry().

Definition at line 96 of file llvosurfacepatch.h.

Definition at line 97 of file llvosurfacepatch.h.

Referenced by dirtyPatch().

Definition at line 99 of file llvosurfacepatch.h.

Referenced by updateFaceSize(), updateGeometry(), and updateNorthGeometry().

Definition at line 100 of file llvosurfacepatch.h.

Referenced by updateEastGeometry(), updateFaceSize(), and updateGeometry().

Definition at line 102 of file llvosurfacepatch.h.

Referenced by updateGeometry().


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

Generated on Fri May 16 09:38:19 2008 for SecondLife by  doxygen 1.5.5