## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# csGLStateCache Class Reference
[Common Plugin Classes]

OpenGL state cache. More...

`#include <csplugincommon/opengl/glstates.h>`

List of all members.

## Public Member Functions

void | ActivateTU ()
| csGLStateCache (csGLExtensionManager *extmgr)
int | GetActiveTU ()
GLuint | GetBufferARB (GLenum target)
GLuint | GetTexture (GLenum, int unit)
GLuint | GetTexture (GLenum)
void | SetActiveTU (int unit)
| Set active texture unit.
void | SetBufferARB (GLenum target, GLuint id)
void | SetContext (csGLStateCacheContext *context)
void | SetTexture (GLenum target, GLuint texture)

## Public Attributes

csGLStateCacheContext * | currentContext
csGLExtensionManager * | extmgr
| GLenum
| GLint
| GLsizei
| VertexPointer
GLvoid | vpointer
| vsize
| vstride
| vtype

## Detailed Description

OpenGL state cache.

All state changes that are made often (possibly with the same value, ie actually no change) or across plugins should be done through the cache.

Remarks:
  Since this class is passed directly between plugins the code in this class cannot do memory allocations or deallocations. The functions in this class will only manipulate member variables.

Definition at line 593 of file glstates.h.

## Member Function Documentation

void csGLStateCache::SetActiveTU | ( | int | unit | ) | `[inline]`

| Set active texture unit. Doesn't check whether the multitexture ext is actually supported, this must be done in calling code. Definition at line 684 of file glstates.h. References currentContext, and csGLStateCacheContext::currentUnit.

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

- csplugincommon/opengl/glstates.h