63 #ifndef vtkOpenGLState_h 
   64 #define vtkOpenGLState_h 
   67 #include "vtkRenderingOpenGL2Module.h"  
   90   void vtkglClearColor(
float red, 
float green, 
float blue, 
float alpha);
 
   91   void vtkglClearDepth(
double depth);
 
   92   void vtkglDepthFunc(
unsigned int val);
 
   93   void vtkglDepthMask(
unsigned char flag);
 
   94   void vtkglColorMask(
unsigned char r, 
unsigned char g, 
unsigned char b, 
unsigned char a);
 
   95   void vtkglViewport(
int x, 
int y, 
int width, 
int height);
 
   96   void vtkglScissor(
int x, 
int y, 
int width, 
int height);
 
   97   void vtkglEnable(
unsigned int cap);
 
   98   void vtkglDisable(
unsigned int cap);
 
  101     this->vtkglBlendFuncSeparate(sfactor, dfactor, sfactor, dfactor);
 
  103   void vtkglBlendFuncSeparate(
unsigned int sfactorRGB, 
unsigned int dfactorRGB,
 
  104     unsigned int sfactorAlpha, 
unsigned int dfactorAlpha);
 
  105   void vtkglBlendEquation(
unsigned int val);
 
  106   void vtkglBlendEquationSeparate(
unsigned int col, 
unsigned int alpha);
 
  107   void vtkglCullFace(
unsigned int val);
 
  108   void vtkglActiveTexture(
unsigned int);
 
  110   void vtkglBindFramebuffer(
unsigned int target, 
unsigned int fb);
 
  111   void vtkglDrawBuffer(
unsigned int);
 
  112   void vtkglDrawBuffers(
unsigned int n, 
unsigned int*);
 
  113   void vtkglReadBuffer(
unsigned int);
 
  125   void ResetGLClearColorState();
 
  126   void ResetGLClearDepthState();
 
  127   void ResetGLDepthFuncState();
 
  128   void ResetGLDepthMaskState();
 
  129   void ResetGLColorMaskState();
 
  130   void ResetGLViewportState();
 
  131   void ResetGLScissorState();
 
  132   void ResetGLBlendFuncState();
 
  133   void ResetGLBlendEquationState();
 
  134   void ResetGLCullFaceState();
 
  135   void ResetGLActiveTexture();
 
  141   void vtkglClear(
unsigned int mask);
 
  147   void vtkglGetBooleanv(
unsigned int pname, 
unsigned char* params);
 
  148   void vtkglGetIntegerv(
unsigned int pname, 
int* params);
 
  149   void vtkglGetDoublev(
unsigned int pname, 
double* params);
 
  150   void vtkglGetFloatv(
unsigned int pname, 
float* params);
 
  154   void GetBlendFuncState(
int*);
 
  158   bool GetEnumState(
unsigned int name);
 
  161   void SetEnumState(
unsigned int name, 
bool value);
 
  166   void ResetEnumState(
unsigned int name);
 
  169   template <
typename T>
 
  175       ((*this->State).*(this->Method))(this->Value);
 
  202   void VerifyNoActiveTextures();
 
  210     this->PushDrawFramebufferBinding();
 
  211     this->PushReadFramebufferBinding();
 
  213   void PushDrawFramebufferBinding();
 
  214   void PushReadFramebufferBinding();
 
  218     this->PopReadFramebufferBinding();
 
  219     this->PopDrawFramebufferBinding();
 
  221   void PopDrawFramebufferBinding();
 
  222   void PopReadFramebufferBinding();
 
  224   void ResetFramebufferBindings();
 
  239     : 
public ScopedValue<std::array<unsigned char, 4> >
 
  279       this->State->vtkglGetBooleanv(
name, &val);
 
  280       this->Value = val == 1;
 
  284       this->State->SetEnumState(this->Name, this->Value);
 
  327     int vtktype, 
int numComponents, 
bool needInteger, 
bool needFloat, 
bool needSRGB);
 
  335   void ColorMask(std::array<unsigned char, 4> val);
 
  336   void Scissor(std::array<int, 4> val);
 
  337   void Viewport(std::array<int, 4> val);
 
  364     unsigned int DrawBuffers[10];
 
  365     unsigned int GetBinding();
 
  366     unsigned int GetDrawBuffer(
unsigned int);
 
  367     unsigned int GetReadBuffer();