VTK
vtkOpenGLHelper.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4 
5  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
6  All rights reserved.
7  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notice for more information.
12 
13 =========================================================================*/
14 
15 #ifndef vtkOpenGLHelper_h
16 #define vtkOpenGLHelper_h
17 
18 #include "vtkRenderingOpenGL2Module.h" // for export macro
19 #include "vtkTimeStamp.h"
20 
24 class vtkShaderProgram;
25 class vtkWindow;
26 
27 // Store the shaders, program, and ibo in a common place
28 // as they are used together frequently. This is just
29 // a convenience class.
30 class VTKRENDERINGOPENGL2_EXPORT vtkOpenGLHelper
31 {
32 public:
38  unsigned int ShaderChangeValue;
39 
41 
43  ~vtkOpenGLHelper();
44  void ReleaseGraphicsResources(vtkWindow *win);
45 
46  private:
47  vtkOpenGLHelper(const vtkOpenGLHelper&) = delete;
48  vtkOpenGLHelper& operator=(const vtkOpenGLHelper&) = delete;
49 };
50 
51 #endif // vtkOpenGLHelper_h
52 
53 // VTK-HeaderTest-Exclude: vtkOpenGLHelper.h
manage Shader Programs within a context
vtkShaderProgram * Program
record modification and/or execution time
Definition: vtkTimeStamp.h:35
vtkOpenGLVertexArrayObject * VAO
unsigned int ShaderChangeValue
window superclass for vtkRenderWindow
Definition: vtkWindow.h:37
vtkTimeStamp AttributeUpdateTime
The VertexArrayObject class uses, or emulates, vertex array objects.
vtkOpenGLIndexBufferObject * IBO
vtkTimeStamp ShaderSourceTime
OpenGL vertex buffer object.
The ShaderProgram uses one or more Shader objects.