VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkRenderState.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00028 #ifndef __vtkRenderState_h 00029 #define __vtkRenderState_h 00030 00031 #include "vtkRenderingOpenGLModule.h" // For export macro 00032 #include "vtkObject.h" 00033 00034 class vtkRenderer; 00035 class vtkProp; 00036 class vtkFrameBufferObject; 00037 class vtkInformation; 00038 00039 class VTKRENDERINGOPENGL_EXPORT vtkRenderState 00040 { 00041 public: 00045 vtkRenderState(vtkRenderer *renderer); 00046 00049 ~vtkRenderState(); 00050 00052 bool IsValid() const; 00053 00057 vtkRenderer *GetRenderer() const; 00058 00062 vtkFrameBufferObject *GetFrameBuffer() const; 00063 00066 void SetFrameBuffer(vtkFrameBufferObject *fbo); 00067 00069 void GetWindowSize(int size[2]) const; 00070 00072 vtkProp **GetPropArray() const; 00073 00076 int GetPropArrayCount() const; 00077 00079 00088 void SetPropArrayAndCount(vtkProp **propArray, 00089 int propArrayCount); 00091 00095 vtkInformation *GetRequiredKeys() const; 00096 00099 void SetRequiredKeys(vtkInformation *keys); 00100 00101 protected: 00104 vtkRenderer *Renderer; 00105 00109 vtkFrameBufferObject *FrameBuffer; 00110 00112 00117 vtkProp **PropArray; 00118 int PropArrayCount; 00120 00123 vtkInformation *RequiredKeys; 00124 00125 private: 00126 vtkRenderState(); // no default constructor. 00127 vtkRenderState(const vtkRenderState &); // Not implemented. 00128 void operator=(const vtkRenderState &); // Not implemented. 00129 }; 00130 00131 #endif 00132 // VTK-HeaderTest-Exclude: vtkRenderState.h