summaryrefslogtreecommitdiff
path: root/indra/llrender/llgl.h
diff options
context:
space:
mode:
authorLoren Shih <seraph@lindenlab.com>2011-05-20 14:56:10 -0400
committerLoren Shih <seraph@lindenlab.com>2011-05-20 14:56:10 -0400
commit6f5313caea9bb8458dca23bbaf4f10cd6641c7fb (patch)
treeac34191250860e5f250cf1cc2e9199cdaa8204f6 /indra/llrender/llgl.h
parenteb8221338e0276b9afe8d92738166f97782d48d6 (diff)
parent0b612741d53a044a0179e1c32018bf8cd4213631 (diff)
automated merge mesh-development -> davep-mesh-candidate-2010
Diffstat (limited to 'indra/llrender/llgl.h')
-rw-r--r--indra/llrender/llgl.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/indra/llrender/llgl.h b/indra/llrender/llgl.h
index c77d85ba2b..1d7ab188fc 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"
@@ -90,6 +91,7 @@ public:
BOOL mHasShaderObjects;
BOOL mHasVertexShader;
BOOL mHasFragmentShader;
+ S32 mNumTextureImageUnits;
BOOL mHasOcclusionQuery;
BOOL mHasOcclusionQuery2;
BOOL mHasPointParameters;
@@ -332,9 +334,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;
@@ -361,13 +365,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;