LLDrawPool Class Reference

#include <lldrawpool.h>

Inheritance diagram for LLDrawPool:

Inheritance graph
[legend]
List of all members.

Public Types

 POOL_SKY = 1
 POOL_STARS
 POOL_GROUND
 POOL_TERRAIN
 POOL_SIMPLE
 POOL_BUMP
 POOL_AVATAR
 POOL_TREE
 POOL_GLOW
 POOL_ALPHA
 POOL_WATER
 POOL_ALPHA_POST_WATER
 NUM_POOL_TYPES
enum  {
  POOL_SKY = 1, POOL_STARS, POOL_GROUND, POOL_TERRAIN,
  POOL_SIMPLE, POOL_BUMP, POOL_AVATAR, POOL_TREE,
  POOL_GLOW, POOL_ALPHA, POOL_WATER, POOL_ALPHA_POST_WATER,
  NUM_POOL_TYPES
}

Public Member Functions

 LLDrawPool (const U32 type)
virtual ~LLDrawPool ()
virtual BOOL isDead ()=0
S32 getId () const
U32 getType () const
virtual LLViewerImagegetDebugTexture ()
virtual void beginRenderPass (S32 pass)
virtual void endRenderPass (S32 pass)
virtual S32 getNumPasses ()
virtual void render (S32 pass=0)=0
virtual void prerender ()=0
virtual S32 getMaterialAttribIndex ()=0
virtual U32 getVertexDataMask ()=0
virtual BOOL verify () const
virtual S32 getVertexShaderLevel () const
virtual LLDrawPoolinstancePool ()=0
virtual LLViewerImagegetTexture ()=0
virtual BOOL isFacePool ()
virtual void resetDrawOrders ()=0
U32 getTrianglesDrawn () const
void resetTrianglesDrawn ()
void addIndicesDrawn (const U32 indices)

Static Public Member Functions

static LLDrawPoolcreatePool (const U32 type, LLViewerImage *tex0=NULL)

Static Public Attributes

static S32 sNumDrawPools = 0

Protected Attributes

S32 mVertexShaderLevel
S32 mId
U32 mType
S32 mIndicesDrawn

Detailed Description

Definition at line 48 of file lldrawpool.h.


Member Enumeration Documentation

anonymous enum

Enumerator:
POOL_SKY 
POOL_STARS 
POOL_GROUND 
POOL_TERRAIN 
POOL_SIMPLE 
POOL_BUMP 
POOL_AVATAR 
POOL_TREE 
POOL_GLOW 
POOL_ALPHA 
POOL_WATER 
POOL_ALPHA_POST_WATER 
NUM_POOL_TYPES 

Definition at line 53 of file lldrawpool.h.


Constructor & Destructor Documentation

LLDrawPool::LLDrawPool ( const U32  type  ) 

Definition at line 111 of file lldrawpool.cpp.

References mId, mIndicesDrawn, mType, mVertexShaderLevel, and sNumDrawPools.

LLDrawPool::~LLDrawPool (  )  [virtual]

Definition at line 120 of file lldrawpool.cpp.


Member Function Documentation

void LLDrawPool::addIndicesDrawn ( const U32  indices  ) 

Definition at line 153 of file lldrawpool.cpp.

References mIndicesDrawn.

Referenced by LLDrawPoolAlpha::renderAlphaHighlight(), LLDrawPoolAlpha::renderGroupAlpha(), and LLDrawPoolTree::renderTree().

void LLDrawPool::beginRenderPass ( S32  pass  )  [virtual]

Reimplemented in LLDrawPoolAlpha, LLDrawPoolAvatar, LLDrawPoolBump, LLDrawPoolClouds, LLDrawPoolSimple, and LLDrawPoolTree.

Definition at line 131 of file lldrawpool.cpp.

LLDrawPool * LLDrawPool::createPool ( const U32  type,
LLViewerImage tex0 = NULL 
) [static]

Definition at line 61 of file lldrawpool.cpp.

References llassert, llendl, llerrs, mType, NULL, POOL_ALPHA, POOL_ALPHA_POST_WATER, POOL_AVATAR, POOL_BUMP, POOL_GLOW, POOL_GROUND, POOL_SIMPLE, POOL_SKY, POOL_STARS, POOL_TERRAIN, POOL_TREE, and POOL_WATER.

Referenced by LLPipeline::getPool().

void LLDrawPool::endRenderPass ( S32  pass  )  [virtual]

Reimplemented in LLDrawPoolAvatar, LLDrawPoolBump, and LLDrawPoolTree.

Definition at line 136 of file lldrawpool.cpp.

LLViewerImage * LLDrawPool::getDebugTexture (  )  [virtual]

Reimplemented in LLRenderPass, LLDrawPoolAvatar, LLDrawPoolTerrain, LLDrawPoolTree, and LLDrawPoolWater.

Definition at line 125 of file lldrawpool.cpp.

References NULL.

S32 LLDrawPool::getId (  )  const [inline]

Definition at line 76 of file lldrawpool.h.

References mId.

virtual S32 LLDrawPool::getMaterialAttribIndex (  )  [pure virtual]

Implemented in LLRenderPass, LLDrawPoolAvatar, LLDrawPoolClouds, LLDrawPoolGround, LLDrawPoolSky, LLDrawPoolStars, LLDrawPoolTerrain, LLDrawPoolTree, and LLDrawPoolWater.

Referenced by LLFace::renderSetColor(), and LLFacePool::LLOverrideFaceColor::setColor().

virtual S32 LLDrawPool::getNumPasses (  )  [inline, virtual]

Reimplemented in LLDrawPoolAvatar, and LLDrawPoolBump.

Definition at line 82 of file lldrawpool.h.

virtual LLViewerImage* LLDrawPool::getTexture (  )  [pure virtual]

Implemented in LLRenderPass, LLFacePool, LLDrawPoolTerrain, and LLDrawPoolTree.

Referenced by LLPipeline::addToQuickLookup(), and LLPipeline::removeFromQuickLookup().

U32 LLDrawPool::getTrianglesDrawn (  )  const

Definition at line 143 of file lldrawpool.cpp.

References mIndicesDrawn.

U32 LLDrawPool::getType (  )  const [inline]

Definition at line 77 of file lldrawpool.h.

References mType.

Referenced by LLPipeline::addToQuickLookup(), LLFacePool::printDebugInfo(), LLPipeline::removeFromQuickLookup(), and LLDrawPoolTerrain::~LLDrawPoolTerrain().

virtual U32 LLDrawPool::getVertexDataMask (  )  [pure virtual]

Implemented in LLDrawPoolAlpha, LLDrawPoolAvatar, LLDrawPoolBump, LLDrawPoolClouds, LLDrawPoolGround, LLDrawPoolSimple, LLDrawPoolGlow, LLDrawPoolSky, LLDrawPoolStars, LLDrawPoolTerrain, LLDrawPoolTree, and LLDrawPoolWater.

Referenced by LLFace::renderIndexed().

virtual S32 LLDrawPool::getVertexShaderLevel (  )  const [inline, virtual]

Reimplemented in LLDrawPoolAvatar.

Definition at line 88 of file lldrawpool.h.

References mVertexShaderLevel.

Referenced by LLViewerJointMesh::drawShape(), LLFacePool::LLOverrideFaceColor::setColor(), LLPipeline::setupHWLights(), LLVOSky::updateGeometry(), LLVOAvatar::updateLOD(), and LLViewerJointMesh::uploadJointMatrices().

virtual LLDrawPool* LLDrawPool::instancePool (  )  [pure virtual]

Implemented in LLRenderPass, LLDrawPoolAvatar, LLDrawPoolClouds, LLDrawPoolGround, LLDrawPoolSky, LLDrawPoolStars, LLDrawPoolTerrain, LLDrawPoolTree, and LLDrawPoolWater.

virtual BOOL LLDrawPool::isDead (  )  [pure virtual]

Implemented in LLRenderPass, and LLFacePool.

Referenced by LLPipeline::rebuildPools().

virtual BOOL LLDrawPool::isFacePool (  )  [inline, virtual]

Reimplemented in LLFacePool.

Definition at line 93 of file lldrawpool.h.

References FALSE.

Referenced by LLPipeline::cleanup().

virtual void LLDrawPool::prerender (  )  [pure virtual]

Implemented in LLDrawPoolAlpha, LLDrawPoolAvatar, LLDrawPoolBump, LLDrawPoolClouds, LLDrawPoolGround, LLDrawPoolSimple, LLDrawPoolGlow, LLDrawPoolSky, LLDrawPoolStars, LLDrawPoolTerrain, LLDrawPoolTree, and LLDrawPoolWater.

virtual void LLDrawPool::render ( S32  pass = 0  )  [pure virtual]

Implemented in LLDrawPoolAlpha, LLDrawPoolAlphaPostWater, LLDrawPoolAvatar, LLDrawPoolBump, LLDrawPoolClouds, LLDrawPoolGround, LLRenderShinyGlow, LLDrawPoolSimple, LLDrawPoolGlow, LLDrawPoolSky, LLDrawPoolStars, LLDrawPoolTerrain, LLDrawPoolTree, and LLDrawPoolWater.

virtual void LLDrawPool::resetDrawOrders (  )  [pure virtual]

Implemented in LLRenderPass, and LLFacePool.

void LLDrawPool::resetTrianglesDrawn (  ) 

Definition at line 148 of file lldrawpool.cpp.

References mIndicesDrawn.

virtual BOOL LLDrawPool::verify (  )  const [inline, virtual]

Reimplemented in LLFacePool, and LLDrawPoolTree.

Definition at line 87 of file lldrawpool.h.

References TRUE.


Member Data Documentation

S32 LLDrawPool::mId [protected]

Definition at line 102 of file lldrawpool.h.

Referenced by getId(), and LLDrawPool().

S32 LLDrawPool::mIndicesDrawn [protected]

Definition at line 104 of file lldrawpool.h.

Referenced by addIndicesDrawn(), LLFacePool::drawLoop(), getTrianglesDrawn(), LLDrawPool(), LLDrawPoolWater::render(), LLDrawPoolStars::render(), LLDrawPoolAvatar::renderAvatars(), LLDrawPoolAvatar::renderForSelect(), LLDrawPoolSky::renderHeavenlyBody(), LLDrawPoolWater::renderReflection(), LLDrawPoolWater::renderShaderSimple(), LLDrawPoolSky::renderSkyCubeFace(), LLDrawPoolSky::renderSunHalo(), resetTrianglesDrawn(), and LLDrawPoolWater::shade().

U32 LLDrawPool::mType [protected]

Definition at line 103 of file lldrawpool.h.

Referenced by createPool(), getType(), and LLDrawPool().

S32 LLDrawPool::mVertexShaderLevel [protected]

Definition at line 101 of file lldrawpool.h.

Referenced by LLDrawPoolAvatar::endRigid(), getVertexShaderLevel(), LLDrawPool(), LLDrawPoolWater::prerender(), LLDrawPoolTree::prerender(), LLDrawPoolTerrain::prerender(), LLDrawPoolStars::prerender(), LLDrawPoolSky::prerender(), LLDrawPoolSimple::prerender(), LLDrawPoolGround::prerender(), LLDrawPoolClouds::prerender(), LLDrawPoolBump::prerender(), LLDrawPoolAvatar::prerender(), LLDrawPoolAlpha::prerender(), LLDrawPoolWater::render(), LLDrawPoolTerrain::render(), and LLFace::renderSetColor().

S32 LLDrawPool::sNumDrawPools = 0 [static]

Definition at line 51 of file lldrawpool.h.

Referenced by LLDrawPool().


The documentation for this class was generated from the following files:
Generated on Thu Jul 1 06:11:14 2010 for Second Life Viewer by  doxygen 1.4.7