LLGLNamePool Class Reference

#include <llgl.h>

Inheritance diagram for LLGLNamePool:

Inheritance graph
[legend]

List of all members.

Public Types

typedef std::vector< NameEntryname_list_t

Public Member Functions

 LLGLNamePool ()
virtual ~LLGLNamePool ()
void upkeep ()
void cleanup ()
GLuint allocate ()
void release (GLuint name)

Static Public Member Functions

static void registerPool (LLGLNamePool *pool)
static void upkeepPools ()
static void cleanupPools ()

Public Attributes

name_list_t mNameList

Protected Types

typedef std::vector
< LLGLNamePool * > 
pool_list_t

Protected Member Functions

virtual GLuint allocateName ()=0
virtual void releaseName (GLuint name)=0

Static Protected Attributes

static pool_list_t sInstances

Classes

struct  CompareUsed
struct  NameEntry


Detailed Description

Definition at line 317 of file llgl.h.


Member Typedef Documentation

typedef std::vector<NameEntry> LLGLNamePool::name_list_t

Definition at line 334 of file llgl.h.

typedef std::vector<LLGLNamePool*> LLGLNamePool::pool_list_t [protected]

Definition at line 351 of file llgl.h.


Constructor & Destructor Documentation

LLGLNamePool::LLGLNamePool (  ) 

Definition at line 1566 of file llgl.cpp.

LLGLNamePool::~LLGLNamePool (  )  [virtual]

Definition at line 1579 of file llgl.cpp.

References sInstances.


Member Function Documentation

void LLGLNamePool::upkeep (  ) 

Definition at line 1588 of file llgl.cpp.

References mNameList.

Referenced by upkeepPools().

Here is the caller graph for this function:

void LLGLNamePool::cleanup (  ) 

Definition at line 1593 of file llgl.cpp.

References mNameList, and releaseName().

Referenced by cleanupPools().

Here is the call graph for this function:

Here is the caller graph for this function:

GLuint LLGLNamePool::allocate (  ) 

Definition at line 1603 of file llgl.cpp.

References allocateName(), mNameList, LLGLNamePool::NameEntry::name, TRUE, and LLGLNamePool::NameEntry::used.

Referenced by LLSpatialGroup::doOcclusion(), LLVertexBuffer::genBuffer(), and LLVertexBuffer::genIndices().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLGLNamePool::release ( GLuint  name  ) 

Definition at line 1622 of file llgl.cpp.

References FALSE, and mNameList.

Referenced by LLSpatialGroup::destroyGL(), LLVertexBuffer::releaseBuffer(), LLVertexBuffer::releaseIndices(), and LLSpatialGroup::~LLSpatialGroup().

Here is the caller graph for this function:

void LLGLNamePool::registerPool ( LLGLNamePool pool  )  [static]

Definition at line 1570 of file llgl.cpp.

References sInstances.

Referenced by LLVertexBuffer::initClass(), and LLSpatialPartition::LLSpatialPartition().

Here is the caller graph for this function:

void LLGLNamePool::upkeepPools (  )  [static]

Definition at line 1635 of file llgl.cpp.

References sInstances, and upkeep().

Referenced by display().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLGLNamePool::cleanupPools (  )  [static]

Definition at line 1645 of file llgl.cpp.

References cleanup(), and sInstances.

Referenced by LLPipeline::resetVertexBuffers().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual GLuint LLGLNamePool::allocateName (  )  [protected, pure virtual]

Implemented in LLVBOPool, and LLOcclusionQueryPool.

Referenced by allocate().

Here is the caller graph for this function:

virtual void LLGLNamePool::releaseName ( GLuint  name  )  [protected, pure virtual]

Implemented in LLVBOPool, and LLOcclusionQueryPool.

Referenced by cleanup().

Here is the caller graph for this function:


Member Data Documentation

Definition at line 335 of file llgl.h.

Referenced by allocate(), cleanup(), release(), LLPipeline::resetVertexBuffers(), and upkeep().

Definition at line 352 of file llgl.h.

Referenced by cleanupPools(), registerPool(), upkeepPools(), and ~LLGLNamePool().


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

Generated on Fri May 16 08:48:24 2008 for SecondLife by  doxygen 1.5.5