VTK  9.3.20240419
vtkOpenGLHelper.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
3 
4 #ifndef vtkOpenGLHelper_h
5 #define vtkOpenGLHelper_h
6 
7 #include "vtkRenderingOpenGL2Module.h" // for export macro
8 #include "vtkTimeStamp.h"
9 
10 VTK_ABI_NAMESPACE_BEGIN
14 class vtkShaderProgram;
15 class vtkWindow;
16 
17 // Store the shaders, program, and ibo in a common place
18 // as they are used together frequently. This is just
19 // a convenience class.
20 class VTKRENDERINGOPENGL2_EXPORT vtkOpenGLHelper
21 {
22 public:
28  unsigned int ShaderChangeValue;
29 
31 
35 
36 private:
37  vtkOpenGLHelper(const vtkOpenGLHelper&) = delete;
38  vtkOpenGLHelper& operator=(const vtkOpenGLHelper&) = delete;
39 };
40 
41 VTK_ABI_NAMESPACE_END
42 #endif // vtkOpenGLHelper_h
43 
44 // VTK-HeaderTest-Exclude: vtkOpenGLHelper.h
unsigned int ShaderChangeValue
vtkOpenGLIndexBufferObject * IBO
vtkTimeStamp AttributeUpdateTime
vtkTimeStamp ShaderSourceTime
void ReleaseGraphicsResources(vtkWindow *win)
vtkOpenGLVertexArrayObject * VAO
vtkShaderProgram * Program
OpenGL vertex buffer object.
manage Shader Programs within a context
The VertexArrayObject class uses, or emulates, vertex array objects.
The ShaderProgram uses one or more Shader objects.
record modification and/or execution time
Definition: vtkTimeStamp.h:44
window superclass for vtkRenderWindow
Definition: vtkWindow.h:48