#include <lldrawpool.h>
Public Types | |
enum | { SHADER_LEVEL_SCATTERING = 2 } |
typedef std::vector< LLFace * > | face_array_t |
Public Member Functions | |
LLFacePool (const U32 type) | |
virtual | ~LLFacePool () |
virtual void | renderForSelect ()=0 |
BOOL | isDead () |
virtual void | renderFaceSelected (LLFace *facep, LLImageGL *image, const LLColor4 &color, const S32 index_offset=0, const S32 index_count=0) |
virtual LLViewerImage * | getTexture () |
virtual void | dirtyTextures (const std::set< LLViewerImage * > &textures) |
virtual void | enqueue (LLFace *face) |
virtual BOOL | addFace (LLFace *face) |
virtual BOOL | removeFace (LLFace *face) |
virtual BOOL | verify () const |
virtual void | resetDrawOrders () |
void | resetAll () |
BOOL | moveFace (LLFace *face, LLDrawPool *poolp, BOOL copy_data=FALSE) |
void | destroy () |
void | buildEdges () |
void | drawLoop () |
void | addFaceReference (LLFace *facep) |
void | removeFaceReference (LLFace *facep) |
void | printDebugInfo () const |
BOOL | isFacePool () |
Static Public Member Functions | |
static S32 | drawLoop (face_array_t &face_list) |
static S32 | drawLoopSetTex (face_array_t &face_list, S32 stage) |
Public Attributes | |
face_array_t | mDrawFace |
face_array_t | mMoveFace |
face_array_t | mReferences |
Friends | |
class | LLFace |
class | LLPipeline |
Classes | |
class | LLOverrideFaceColor |
Definition at line 134 of file lldrawpool.h.
typedef std::vector<LLFace*> LLFacePool::face_array_t |
Definition at line 137 of file lldrawpool.h.
anonymous enum |
LLFacePool::LLFacePool | ( | const U32 | type | ) |
Definition at line 143 of file lldrawpool.cpp.
References resetDrawOrders().
LLFacePool::~LLFacePool | ( | ) | [virtual] |
Definition at line 149 of file lldrawpool.cpp.
References destroy().
virtual void LLFacePool::renderForSelect | ( | ) | [pure virtual] |
Implemented in LLDrawPoolAvatar, LLDrawPoolGround, LLDrawPoolSky, LLDrawPoolTerrain, LLDrawPoolTree, and LLDrawPoolWater.
Referenced by LLPipeline::renderForSelect().
BOOL LLFacePool::isDead | ( | ) | [inline, virtual] |
LLViewerImage * LLFacePool::getTexture | ( | ) | [virtual] |
Implements LLDrawPool.
Reimplemented in LLDrawPoolTerrain, and LLDrawPoolTree.
Definition at line 247 of file lldrawpool.cpp.
References NULL.
void LLFacePool::dirtyTextures | ( | const std::set< LLViewerImage * > & | textures | ) | [virtual] |
void LLFacePool::enqueue | ( | LLFace * | face | ) | [virtual] |
Definition at line 219 of file lldrawpool.cpp.
References mDrawFace.
Referenced by LLPipeline::stateSort().
Definition at line 225 of file lldrawpool.cpp.
References addFaceReference(), and TRUE.
Referenced by LLFace::setPool().
Definition at line 232 of file lldrawpool.cpp.
References mDrawFace, removeFaceReference(), TRUE, and vector_replace_with_last().
Referenced by LLFace::destroy(), and LLFace::setPool().
BOOL LLFacePool::verify | ( | ) | const [virtual] |
Reimplemented from LLDrawPool.
Reimplemented in LLDrawPoolTree.
Definition at line 276 of file lldrawpool.cpp.
References FALSE, LLFace::getPool(), llendl, llinfos, mDrawFace, LLFace::printDebugInfo(), TRUE, and LLFace::verify().
void LLFacePool::resetDrawOrders | ( | ) | [virtual] |
Implements LLDrawPool.
Definition at line 242 of file lldrawpool.cpp.
References mDrawFace.
Referenced by LLFacePool().
void LLFacePool::resetAll | ( | ) |
BOOL LLFacePool::moveFace | ( | LLFace * | face, | |
LLDrawPool * | poolp, | |||
BOOL | copy_data = FALSE | |||
) |
void LLFacePool::destroy | ( | ) |
Definition at line 154 of file lldrawpool.cpp.
References llendl, llinfos, and mReferences.
Referenced by ~LLFacePool().
void LLFacePool::buildEdges | ( | ) |
S32 LLFacePool::drawLoop | ( | face_array_t & | face_list | ) | [static] |
Definition at line 172 of file lldrawpool.cpp.
References LLFace::renderIndexed(), and S32.
S32 LLFacePool::drawLoopSetTex | ( | face_array_t & | face_list, | |
S32 | stage | |||
) | [static] |
Definition at line 188 of file lldrawpool.cpp.
References LLFace::bindTexture(), LLFace::renderIndexed(), and S32.
void LLFacePool::drawLoop | ( | ) |
Definition at line 204 of file lldrawpool.cpp.
References mDrawFace.
Referenced by LLDrawPoolTerrain::renderFull2TU(), LLDrawPoolTerrain::renderFull4TU(), LLDrawPoolTerrain::renderFullShader(), and LLDrawPoolTerrain::renderSimple().
void LLFacePool::addFaceReference | ( | LLFace * | facep | ) |
Definition at line 267 of file lldrawpool.cpp.
References LLFace::getReferenceIndex(), mReferences, and LLFace::setReferenceIndex().
Referenced by addFace().
void LLFacePool::removeFaceReference | ( | LLFace * | facep | ) |
Definition at line 252 of file lldrawpool.cpp.
References LLFace::getReferenceIndex(), mReferences, S32, and LLFace::setReferenceIndex().
Referenced by removeFace().
void LLFacePool::printDebugInfo | ( | ) | const |
Definition at line 299 of file lldrawpool.cpp.
References LLDrawPool::getType(), llendl, and llinfos.
Referenced by LLFace::printDebugInfo().
BOOL LLFacePool::isFacePool | ( | ) | [inline, virtual] |
friend class LLFace [friend] |
Definition at line 182 of file lldrawpool.h.
friend class LLPipeline [friend] |
Definition at line 183 of file lldrawpool.h.
Definition at line 185 of file lldrawpool.h.
Referenced by drawLoop(), enqueue(), removeFace(), LLDrawPoolWater::render(), LLDrawPoolTree::render(), LLDrawPoolTerrain::render(), LLDrawPoolSky::render(), LLDrawPoolGround::render(), LLDrawPoolAvatar::renderAvatars(), LLDrawPoolTree::renderForSelect(), LLDrawPoolTerrain::renderForSelect(), LLDrawPoolAvatar::renderForSelect(), LLDrawPoolTerrain::renderFull2TU(), LLDrawPoolTerrain::renderFull4TU(), LLDrawPoolTerrain::renderFullShader(), LLDrawPoolTerrain::renderOwnership(), LLDrawPoolTerrain::renderSimple(), LLDrawPoolSky::renderSkyCubeFace(), LLDrawPoolTree::renderTree(), resetDrawOrders(), LLDrawPoolWater::shade(), and verify().
Definition at line 186 of file lldrawpool.h.
Definition at line 187 of file lldrawpool.h.
Referenced by addFaceReference(), LLPipeline::cleanup(), destroy(), LLDrawPoolTerrain::dirtyTextures(), LLViewerObject::dump(), LLDrawPoolAvatar::getDebugTexture(), isDead(), LLFace::printDebugInfo(), removeFaceReference(), and LLSurface::~LLSurface().