Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkOpenGLStateCache Class Reference

#include <vtkOpenGLStateCache.h>

Collaboration diagram for vtkOpenGLStateCache:

Collaboration graph
[legend]
List of all members.

Detailed Description

checks for redundancies in state-change requests

This simply checks for redundancies in state-change requests and only calls the real OpenGL call if there has in fact been a change. This cannot, however, fix problems with the ordering of calls.

Definition at line 95 of file vtkOpenGLStateCache.h.

Public Member Functions

 vtkOpenGLStateCache ()
 ~vtkOpenGLStateCache ()
void Initialize ()
void glEnable (GLenum e)
void glDisable (GLenum e)
void glAlphaFunc (GLenum e, GLclampf cf)
void glBlendFunc (GLenum e, GLenum e1)
void glDepthFunc (GLenum e)
void glTexEnvf (GLenum e, GLenum e1, GLfloat f)
void glLightModeli (GLenum e, GLint i)
void glLightModelfv (GLenum e, GLfloat *fv)
void glLightfv (GLenum light, GLenum pname, const GLfloat *params)
void glLightf (GLenum light, GLenum pname, GLfloat f)
void glLighti (GLenum light, GLenum pname, GLint f)
void glMaterialfv (GLenum face, GLenum pname, const GLfloat *params)
void glShadeModel (GLenum e)
void glClearColor (GLclampf r, GLclampf g, GLclampf b, GLclampf a)
void glClearDepth (GLclampd d)
void glDepthMask (GLenum e)
void glCullFace (GLenum e)
void glClear (GLbitfield b)
void glDrawBuffer (GLenum e)
void glMatrixMode (GLenum e)
void glViewport (GLint llx, GLint lly, GLint u, GLint v)
void glScissor (GLint llx, GLint lly, GLint u, GLint v)
void glClipPlane (GLenum e, const GLdouble *eqn)
void glColorMaterial (GLenum face, GLenum mode)
void glPointSize (GLfloat f)
void glLineWidth (GLfloat f)
void glLineStipple (GLint factor, GLushort pattern)
void glDepthRange (GLclampd nearval, GLclampd farval)

Public Attributes

char Enable_buckets [0xDE1-0xB10+1]
char Enable_GL_LIGHT_buckets [8]
char Enable_GL_CLIP_PLANE_buckets [8]
GLclampf AlphaFunc_bucket
GLenum BlendFunc_bucket
GLenum DepthFunc_bucket
GLfloat TexEnvf_MODE_bucket
GLint LightModeli_LIGHT_MODEL_TWO_SIDE_bucket
GLfloat LightModelfv_LIGHT_MODEL_AMBIENT_bucket [3]
GLfloat Lightfv_buckets [8 *4 *8]
GLfloat Lightf_buckets [8 *8]
GLint Lighti_SPOT_CUTOFF_buckets [8]
GLfloat Materialfv_buckets [8 *8 *4]
GLenum ShadeModel_bucket
GLclampf ClearColor_buckets [4]
GLclampd ClearDepth_bucket
GLclampf DepthMask_bucket
GLenum CullFace_bucket
GLenum DrawBuffer_bucket
GLenum MatrixMode_bucket
GLint Viewport_bucket [4]
GLint Scissor_bucket [4]
GLdouble ClipPlane_bucket [4 *GL_MAX_CLIP_PLANES]
GLenum ColorMaterial_bucket [8]
GLfloat PointSize_bucket
GLfloat LineWidth_bucket
GLint LineStipple_FACTOR_bucket
GLushort LineStipple_PATTERN_bucket
GLclampd DepthRange_NEAR_bucket
GLclampd DepthRange_FAR_bucket

Static Public Attributes

static vtkOpenGLStateCacheCurrentGLCache


Constructor & Destructor Documentation

vtkOpenGLStateCache::vtkOpenGLStateCache  ) 
 

vtkOpenGLStateCache::~vtkOpenGLStateCache  ) 
 


Member Function Documentation

void vtkOpenGLStateCache::Initialize  ) 
 

void vtkOpenGLStateCache::glEnable GLenum  e  )  [inline]
 

Definition at line 128 of file vtkOpenGLStateCache.h.

References Enable_buckets, Enable_GL_CLIP_PLANE_buckets, and Enable_GL_LIGHT_buckets.

void vtkOpenGLStateCache::glDisable GLenum  e  )  [inline]
 

Definition at line 163 of file vtkOpenGLStateCache.h.

References Enable_buckets, Enable_GL_CLIP_PLANE_buckets, and Enable_GL_LIGHT_buckets.

void vtkOpenGLStateCache::glAlphaFunc GLenum  e,
GLclampf  cf
[inline]
 

Definition at line 201 of file vtkOpenGLStateCache.h.

References AlphaFunc_bucket.

void vtkOpenGLStateCache::glBlendFunc GLenum  e,
GLenum  e1
[inline]
 

Definition at line 212 of file vtkOpenGLStateCache.h.

References BlendFunc_bucket.

void vtkOpenGLStateCache::glDepthFunc GLenum  e  )  [inline]
 

Definition at line 225 of file vtkOpenGLStateCache.h.

References DepthFunc_bucket.

void vtkOpenGLStateCache::glTexEnvf GLenum  e,
GLenum  e1,
GLfloat  f
[inline]
 

Definition at line 236 of file vtkOpenGLStateCache.h.

References TexEnvf_MODE_bucket.

void vtkOpenGLStateCache::glLightModeli GLenum  e,
GLint  i
[inline]
 

Definition at line 251 of file vtkOpenGLStateCache.h.

References LightModeli_LIGHT_MODEL_TWO_SIDE_bucket.

void vtkOpenGLStateCache::glLightModelfv GLenum  e,
GLfloat *  fv
[inline]
 

Definition at line 262 of file vtkOpenGLStateCache.h.

References LightModelfv_LIGHT_MODEL_AMBIENT_bucket.

void vtkOpenGLStateCache::glLightfv GLenum  light,
GLenum  pname,
const GLfloat *  params
[inline]
 

Definition at line 282 of file vtkOpenGLStateCache.h.

References Lightfv_buckets.

void vtkOpenGLStateCache::glLightf GLenum  light,
GLenum  pname,
GLfloat  f
[inline]
 

Definition at line 307 of file vtkOpenGLStateCache.h.

References Lightf_buckets, and Lighti_SPOT_CUTOFF_buckets.

void vtkOpenGLStateCache::glLighti GLenum  light,
GLenum  pname,
GLint  f
[inline]
 

Definition at line 322 of file vtkOpenGLStateCache.h.

References Lightf_buckets, and Lighti_SPOT_CUTOFF_buckets.

void vtkOpenGLStateCache::glMaterialfv GLenum  face,
GLenum  pname,
const GLfloat *  params
[inline]
 

Definition at line 344 of file vtkOpenGLStateCache.h.

References Materialfv_buckets.

void vtkOpenGLStateCache::glShadeModel GLenum  e  )  [inline]
 

Definition at line 385 of file vtkOpenGLStateCache.h.

References ShadeModel_bucket.

void vtkOpenGLStateCache::glClearColor GLclampf  r,
GLclampf  g,
GLclampf  b,
GLclampf  a
[inline]
 

Definition at line 395 of file vtkOpenGLStateCache.h.

References ClearColor_buckets.

void vtkOpenGLStateCache::glClearDepth GLclampd  d  )  [inline]
 

Definition at line 412 of file vtkOpenGLStateCache.h.

References ClearDepth_bucket.

void vtkOpenGLStateCache::glDepthMask GLenum  e  )  [inline]
 

Definition at line 422 of file vtkOpenGLStateCache.h.

References DepthMask_bucket.

void vtkOpenGLStateCache::glCullFace GLenum  e  )  [inline]
 

Definition at line 434 of file vtkOpenGLStateCache.h.

References CullFace_bucket.

void vtkOpenGLStateCache::glClear GLbitfield  b  )  [inline]
 

Definition at line 444 of file vtkOpenGLStateCache.h.

void vtkOpenGLStateCache::glDrawBuffer GLenum  e  )  [inline]
 

Definition at line 450 of file vtkOpenGLStateCache.h.

References DrawBuffer_bucket.

void vtkOpenGLStateCache::glMatrixMode GLenum  e  )  [inline]
 

Definition at line 460 of file vtkOpenGLStateCache.h.

References MatrixMode_bucket.

void vtkOpenGLStateCache::glViewport GLint  llx,
GLint  lly,
GLint  u,
GLint  v
[inline]
 

Definition at line 468 of file vtkOpenGLStateCache.h.

References Viewport_bucket.

void vtkOpenGLStateCache::glScissor GLint  llx,
GLint  lly,
GLint  u,
GLint  v
[inline]
 

Definition at line 483 of file vtkOpenGLStateCache.h.

References Scissor_bucket.

void vtkOpenGLStateCache::glClipPlane GLenum  e,
const GLdouble *  eqn
[inline]
 

Definition at line 500 of file vtkOpenGLStateCache.h.

References ClipPlane_bucket.

void vtkOpenGLStateCache::glColorMaterial GLenum  face,
GLenum  mode
[inline]
 

Definition at line 519 of file vtkOpenGLStateCache.h.

References ColorMaterial_bucket.

void vtkOpenGLStateCache::glPointSize GLfloat  f  )  [inline]
 

Definition at line 527 of file vtkOpenGLStateCache.h.

References PointSize_bucket.

Referenced by glLineWidth().

void vtkOpenGLStateCache::glLineWidth GLfloat  f  )  [inline]
 

Definition at line 534 of file vtkOpenGLStateCache.h.

References glPointSize(), and LineWidth_bucket.

void vtkOpenGLStateCache::glLineStipple GLint  factor,
GLushort  pattern
[inline]
 

Definition at line 542 of file vtkOpenGLStateCache.h.

References LineStipple_FACTOR_bucket, and LineStipple_PATTERN_bucket.

void vtkOpenGLStateCache::glDepthRange GLclampd  nearval,
GLclampd  farval
[inline]
 

Definition at line 555 of file vtkOpenGLStateCache.h.

References DepthRange_FAR_bucket, and DepthRange_NEAR_bucket.


Member Data Documentation

vtkOpenGLStateCache* vtkOpenGLStateCache::CurrentGLCache [static]
 

Definition at line 98 of file vtkOpenGLStateCache.h.

char vtkOpenGLStateCache::Enable_buckets[0xDE1-0xB10+1]
 

Definition at line 120 of file vtkOpenGLStateCache.h.

Referenced by glDisable(), and glEnable().

char vtkOpenGLStateCache::Enable_GL_LIGHT_buckets[8]
 

Definition at line 121 of file vtkOpenGLStateCache.h.

Referenced by glDisable(), and glEnable().

char vtkOpenGLStateCache::Enable_GL_CLIP_PLANE_buckets[8]
 

Definition at line 122 of file vtkOpenGLStateCache.h.

Referenced by glDisable(), and glEnable().

GLclampf vtkOpenGLStateCache::AlphaFunc_bucket
 

Definition at line 200 of file vtkOpenGLStateCache.h.

Referenced by glAlphaFunc().

GLenum vtkOpenGLStateCache::BlendFunc_bucket
 

Definition at line 211 of file vtkOpenGLStateCache.h.

Referenced by glBlendFunc().

GLenum vtkOpenGLStateCache::DepthFunc_bucket
 

Definition at line 224 of file vtkOpenGLStateCache.h.

Referenced by glDepthFunc().

GLfloat vtkOpenGLStateCache::TexEnvf_MODE_bucket
 

Definition at line 235 of file vtkOpenGLStateCache.h.

Referenced by glTexEnvf().

GLint vtkOpenGLStateCache::LightModeli_LIGHT_MODEL_TWO_SIDE_bucket
 

Definition at line 250 of file vtkOpenGLStateCache.h.

Referenced by glLightModeli().

GLfloat vtkOpenGLStateCache::LightModelfv_LIGHT_MODEL_AMBIENT_bucket[3]
 

Definition at line 261 of file vtkOpenGLStateCache.h.

Referenced by glLightModelfv().

GLfloat vtkOpenGLStateCache::Lightfv_buckets[8 *4 *8]
 

Definition at line 281 of file vtkOpenGLStateCache.h.

Referenced by glLightfv().

GLfloat vtkOpenGLStateCache::Lightf_buckets[8 *8]
 

Definition at line 305 of file vtkOpenGLStateCache.h.

Referenced by glLightf(), and glLighti().

GLint vtkOpenGLStateCache::Lighti_SPOT_CUTOFF_buckets[8]
 

Definition at line 306 of file vtkOpenGLStateCache.h.

Referenced by glLightf(), and glLighti().

GLfloat vtkOpenGLStateCache::Materialfv_buckets[8 *8 *4]
 

Definition at line 343 of file vtkOpenGLStateCache.h.

Referenced by glMaterialfv().

GLenum vtkOpenGLStateCache::ShadeModel_bucket
 

Definition at line 384 of file vtkOpenGLStateCache.h.

Referenced by glShadeModel().

GLclampf vtkOpenGLStateCache::ClearColor_buckets[4]
 

Definition at line 394 of file vtkOpenGLStateCache.h.

Referenced by glClearColor().

GLclampd vtkOpenGLStateCache::ClearDepth_bucket
 

Definition at line 411 of file vtkOpenGLStateCache.h.

Referenced by glClearDepth().

GLclampf vtkOpenGLStateCache::DepthMask_bucket
 

Definition at line 421 of file vtkOpenGLStateCache.h.

Referenced by glDepthMask().

GLenum vtkOpenGLStateCache::CullFace_bucket
 

Definition at line 433 of file vtkOpenGLStateCache.h.

Referenced by glCullFace().

GLenum vtkOpenGLStateCache::DrawBuffer_bucket
 

Definition at line 449 of file vtkOpenGLStateCache.h.

Referenced by glDrawBuffer().

GLenum vtkOpenGLStateCache::MatrixMode_bucket
 

Definition at line 459 of file vtkOpenGLStateCache.h.

Referenced by glMatrixMode().

GLint vtkOpenGLStateCache::Viewport_bucket[4]
 

Definition at line 467 of file vtkOpenGLStateCache.h.

Referenced by glViewport().

GLint vtkOpenGLStateCache::Scissor_bucket[4]
 

Definition at line 482 of file vtkOpenGLStateCache.h.

Referenced by glScissor().

GLdouble vtkOpenGLStateCache::ClipPlane_bucket[4 *GL_MAX_CLIP_PLANES]
 

Definition at line 499 of file vtkOpenGLStateCache.h.

Referenced by glClipPlane().

GLenum vtkOpenGLStateCache::ColorMaterial_bucket[8]
 

Definition at line 518 of file vtkOpenGLStateCache.h.

Referenced by glColorMaterial().

GLfloat vtkOpenGLStateCache::PointSize_bucket
 

Definition at line 526 of file vtkOpenGLStateCache.h.

Referenced by glPointSize().

GLfloat vtkOpenGLStateCache::LineWidth_bucket
 

Definition at line 533 of file vtkOpenGLStateCache.h.

Referenced by glLineWidth().

GLint vtkOpenGLStateCache::LineStipple_FACTOR_bucket
 

Definition at line 540 of file vtkOpenGLStateCache.h.

Referenced by glLineStipple().

GLushort vtkOpenGLStateCache::LineStipple_PATTERN_bucket
 

Definition at line 541 of file vtkOpenGLStateCache.h.

Referenced by glLineStipple().

GLclampd vtkOpenGLStateCache::DepthRange_NEAR_bucket
 

Definition at line 553 of file vtkOpenGLStateCache.h.

Referenced by glDepthRange().

GLclampd vtkOpenGLStateCache::DepthRange_FAR_bucket
 

Definition at line 554 of file vtkOpenGLStateCache.h.

Referenced by glDepthRange().


The documentation for this class was generated from the following file:
Generated on Tue Jan 22 00:04:08 2008 for VTK by  doxygen 1.4.3-20050530