Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | 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.

Created by:
  • Martin, Ken
CVS contributions (if > 5%):
  • Martin, Ken (94%)
CVS logs (CVSweb):
  • .h (/Rendering/vtkOpenGLStateCache.h)
  • .cxx (/Rendering/vtkOpenGLStateCache.cxx)

Definition at line 109 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

vtkOpenGLStateCacheCurrentGLCache


Constructor & Destructor Documentation

vtkOpenGLStateCache::vtkOpenGLStateCache  ) 
 

vtkOpenGLStateCache::~vtkOpenGLStateCache  ) 
 


Member Function Documentation

void vtkOpenGLStateCache::Initialize  ) 
 

void vtkOpenGLStateCache::glEnable GLenum  e  )  [inline]
 

Definition at line 142 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 177 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 215 of file vtkOpenGLStateCache.h.

References AlphaFunc_bucket.

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

Definition at line 226 of file vtkOpenGLStateCache.h.

References BlendFunc_bucket.

void vtkOpenGLStateCache::glDepthFunc GLenum  e  )  [inline]
 

Definition at line 239 of file vtkOpenGLStateCache.h.

References DepthFunc_bucket.

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

Definition at line 250 of file vtkOpenGLStateCache.h.

References TexEnvf_MODE_bucket.

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

Definition at line 265 of file vtkOpenGLStateCache.h.

References LightModeli_LIGHT_MODEL_TWO_SIDE_bucket.

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

Definition at line 276 of file vtkOpenGLStateCache.h.

References LightModelfv_LIGHT_MODEL_AMBIENT_bucket.

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

Definition at line 296 of file vtkOpenGLStateCache.h.

References Lightfv_buckets.

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

Definition at line 321 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 336 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 358 of file vtkOpenGLStateCache.h.

References Materialfv_buckets.

void vtkOpenGLStateCache::glShadeModel GLenum  e  )  [inline]
 

Definition at line 399 of file vtkOpenGLStateCache.h.

References ShadeModel_bucket.

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

Definition at line 409 of file vtkOpenGLStateCache.h.

void vtkOpenGLStateCache::glClearDepth GLclampd  d  )  [inline]
 

Definition at line 426 of file vtkOpenGLStateCache.h.

References ClearDepth_bucket.

void vtkOpenGLStateCache::glDepthMask GLenum  e  )  [inline]
 

Definition at line 436 of file vtkOpenGLStateCache.h.

References DepthMask_bucket.

void vtkOpenGLStateCache::glCullFace GLenum  e  )  [inline]
 

Definition at line 448 of file vtkOpenGLStateCache.h.

References CullFace_bucket.

void vtkOpenGLStateCache::glClear GLbitfield  b  )  [inline]
 

Definition at line 458 of file vtkOpenGLStateCache.h.

void vtkOpenGLStateCache::glDrawBuffer GLenum  e  )  [inline]
 

Definition at line 464 of file vtkOpenGLStateCache.h.

References DrawBuffer_bucket.

void vtkOpenGLStateCache::glMatrixMode GLenum  e  )  [inline]
 

Definition at line 474 of file vtkOpenGLStateCache.h.

References MatrixMode_bucket.

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

Definition at line 482 of file vtkOpenGLStateCache.h.

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

Definition at line 497 of file vtkOpenGLStateCache.h.

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

Definition at line 514 of file vtkOpenGLStateCache.h.

References ClipPlane_bucket.

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

Definition at line 533 of file vtkOpenGLStateCache.h.

References ColorMaterial_bucket.

void vtkOpenGLStateCache::glPointSize GLfloat  f  )  [inline]
 

Definition at line 541 of file vtkOpenGLStateCache.h.

References PointSize_bucket.

void vtkOpenGLStateCache::glLineWidth GLfloat  f  )  [inline]
 

Definition at line 548 of file vtkOpenGLStateCache.h.

References LineWidth_bucket.

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

Definition at line 556 of file vtkOpenGLStateCache.h.

References LineStipple_FACTOR_bucket, and LineStipple_PATTERN_bucket.

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

Definition at line 569 of file vtkOpenGLStateCache.h.

References DepthRange_FAR_bucket, and DepthRange_NEAR_bucket.


Member Data Documentation

vtkOpenGLStateCache* vtkOpenGLStateCache::CurrentGLCache [static]
 

Definition at line 112 of file vtkOpenGLStateCache.h.

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

Definition at line 134 of file vtkOpenGLStateCache.h.

Referenced by glDisable(), and glEnable().

char vtkOpenGLStateCache::Enable_GL_LIGHT_buckets[8]
 

Definition at line 135 of file vtkOpenGLStateCache.h.

Referenced by glDisable(), and glEnable().

char vtkOpenGLStateCache::Enable_GL_CLIP_PLANE_buckets[8]
 

Definition at line 136 of file vtkOpenGLStateCache.h.

Referenced by glDisable(), and glEnable().

GLclampf vtkOpenGLStateCache::AlphaFunc_bucket
 

Definition at line 214 of file vtkOpenGLStateCache.h.

Referenced by glAlphaFunc().

GLenum vtkOpenGLStateCache::BlendFunc_bucket
 

Definition at line 225 of file vtkOpenGLStateCache.h.

Referenced by glBlendFunc().

GLenum vtkOpenGLStateCache::DepthFunc_bucket
 

Definition at line 238 of file vtkOpenGLStateCache.h.

Referenced by glDepthFunc().

GLfloat vtkOpenGLStateCache::TexEnvf_MODE_bucket
 

Definition at line 249 of file vtkOpenGLStateCache.h.

Referenced by glTexEnvf().

GLint vtkOpenGLStateCache::LightModeli_LIGHT_MODEL_TWO_SIDE_bucket
 

Definition at line 264 of file vtkOpenGLStateCache.h.

Referenced by glLightModeli().

GLfloat vtkOpenGLStateCache::LightModelfv_LIGHT_MODEL_AMBIENT_bucket[3]
 

Definition at line 275 of file vtkOpenGLStateCache.h.

Referenced by glLightModelfv().

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

Definition at line 295 of file vtkOpenGLStateCache.h.

Referenced by glLightfv().

GLfloat vtkOpenGLStateCache::Lightf_buckets[8 *8]
 

Definition at line 319 of file vtkOpenGLStateCache.h.

Referenced by glLightf(), and glLighti().

GLint vtkOpenGLStateCache::Lighti_SPOT_CUTOFF_buckets[8]
 

Definition at line 320 of file vtkOpenGLStateCache.h.

Referenced by glLightf(), and glLighti().

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

Definition at line 357 of file vtkOpenGLStateCache.h.

Referenced by glMaterialfv().

GLenum vtkOpenGLStateCache::ShadeModel_bucket
 

Definition at line 398 of file vtkOpenGLStateCache.h.

Referenced by glShadeModel().

GLclampf vtkOpenGLStateCache::ClearColor_buckets[4]
 

Definition at line 408 of file vtkOpenGLStateCache.h.

GLclampd vtkOpenGLStateCache::ClearDepth_bucket
 

Definition at line 425 of file vtkOpenGLStateCache.h.

Referenced by glClearDepth().

GLclampf vtkOpenGLStateCache::DepthMask_bucket
 

Definition at line 435 of file vtkOpenGLStateCache.h.

Referenced by glDepthMask().

GLenum vtkOpenGLStateCache::CullFace_bucket
 

Definition at line 447 of file vtkOpenGLStateCache.h.

Referenced by glCullFace().

GLenum vtkOpenGLStateCache::DrawBuffer_bucket
 

Definition at line 463 of file vtkOpenGLStateCache.h.

Referenced by glDrawBuffer().

GLenum vtkOpenGLStateCache::MatrixMode_bucket
 

Definition at line 473 of file vtkOpenGLStateCache.h.

Referenced by glMatrixMode().

GLint vtkOpenGLStateCache::Viewport_bucket[4]
 

Definition at line 481 of file vtkOpenGLStateCache.h.

GLint vtkOpenGLStateCache::Scissor_bucket[4]
 

Definition at line 496 of file vtkOpenGLStateCache.h.

GLdouble vtkOpenGLStateCache::ClipPlane_bucket[4 *GL_MAX_CLIP_PLANES]
 

Definition at line 513 of file vtkOpenGLStateCache.h.

Referenced by glClipPlane().

GLenum vtkOpenGLStateCache::ColorMaterial_bucket[8]
 

Definition at line 532 of file vtkOpenGLStateCache.h.

Referenced by glColorMaterial().

GLfloat vtkOpenGLStateCache::PointSize_bucket
 

Definition at line 540 of file vtkOpenGLStateCache.h.

Referenced by glPointSize().

GLfloat vtkOpenGLStateCache::LineWidth_bucket
 

Definition at line 547 of file vtkOpenGLStateCache.h.

Referenced by glLineWidth().

GLint vtkOpenGLStateCache::LineStipple_FACTOR_bucket
 

Definition at line 554 of file vtkOpenGLStateCache.h.

Referenced by glLineStipple().

GLushort vtkOpenGLStateCache::LineStipple_PATTERN_bucket
 

Definition at line 555 of file vtkOpenGLStateCache.h.

Referenced by glLineStipple().

GLclampd vtkOpenGLStateCache::DepthRange_NEAR_bucket
 

Definition at line 567 of file vtkOpenGLStateCache.h.

Referenced by glDepthRange().

GLclampd vtkOpenGLStateCache::DepthRange_FAR_bucket
 

Definition at line 568 of file vtkOpenGLStateCache.h.

Referenced by glDepthRange().


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