summaryrefslogtreecommitdiff
path: root/indra/llrender/llgl.h
diff options
context:
space:
mode:
authorDave SIMmONs <simon@lindenlab.com>2011-05-12 13:42:51 -0700
committerDave SIMmONs <simon@lindenlab.com>2011-05-12 13:42:51 -0700
commit00c5628074dff2a687d737bc30e9dbe2a1ccfbf8 (patch)
treead6819435b956dee23c6463d69fe26caa89d912d /indra/llrender/llgl.h
parent11f988cd09daa8f33a21b7f82201e4b59e8a04ad (diff)
parent6fcf9e4817a5c245f7779dd030b0ba75dab10e5e (diff)
Merge lindenlab/viewer-development
Diffstat (limited to 'indra/llrender/llgl.h')
-rw-r--r--indra/llrender/llgl.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/indra/llrender/llgl.h b/indra/llrender/llgl.h
index 684fd50883..51b0a1e45f 100644
--- a/indra/llrender/llgl.h
+++ b/indra/llrender/llgl.h
@@ -40,6 +40,7 @@
#include "v4math.h"
#include "llplane.h"
#include "llgltypes.h"
+#include "llinstancetracker.h"
#include "llglheaders.h"
#include "glh/glh_linear.h"
@@ -328,9 +329,11 @@ public:
Generic pooling scheme for things which use GL names (used for occlusion queries and vertex buffer objects).
Prevents thrashing of GL name caches by avoiding calls to glGenFoo and glDeleteFoo.
*/
-class LLGLNamePool
+class LLGLNamePool : public LLInstanceTracker<LLGLNamePool>
{
public:
+ typedef LLInstanceTracker<LLGLNamePool> tracker_t;
+
struct NameEntry
{
GLuint name;
@@ -357,13 +360,11 @@ public:
GLuint allocate();
void release(GLuint name);
- static void registerPool(LLGLNamePool* pool);
static void upkeepPools();
static void cleanupPools();
protected:
typedef std::vector<LLGLNamePool*> pool_list_t;
- static pool_list_t sInstances;
virtual GLuint allocateName() = 0;
virtual void releaseName(GLuint name) = 0;