VTK  9.0.20200802
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
vtkOpenGLHelper::VAO
vtkOpenGLVertexArrayObject * VAO
Definition: vtkOpenGLHelper.h:35
vtkTimeStamp.h
vtkOpenGLHelper::Program
vtkShaderProgram * Program
Definition: vtkOpenGLHelper.h:33
vtkTimeStamp
record modification and/or execution time
Definition: vtkTimeStamp.h:32
vtkOpenGLHelper::AttributeUpdateTime
vtkTimeStamp AttributeUpdateTime
Definition: vtkOpenGLHelper.h:36
vtkWindow
window superclass for vtkRenderWindow
Definition: vtkWindow.h:38
vtkOpenGLHelper::PrimitiveType
int PrimitiveType
Definition: vtkOpenGLHelper.h:37
vtkOpenGLHelper::ShaderSourceTime
vtkTimeStamp ShaderSourceTime
Definition: vtkOpenGLHelper.h:34
vtkOpenGLIndexBufferObject
OpenGL vertex buffer object.
Definition: vtkOpenGLIndexBufferObject.h:27
vtkOpenGLHelper::ShaderChangeValue
unsigned int ShaderChangeValue
Definition: vtkOpenGLHelper.h:38
vtkShaderProgram
The ShaderProgram uses one or more Shader objects.
Definition: vtkShaderProgram.h:44
vtkOpenGLHelper
Definition: vtkOpenGLHelper.h:30
vtkOpenGLHelper::IBO
vtkOpenGLIndexBufferObject * IBO
Definition: vtkOpenGLHelper.h:40
vtkOpenGLShaderCache
manage Shader Programs within a context
Definition: vtkOpenGLShaderCache.h:35
vtkOpenGLVertexArrayObject
The VertexArrayObject class uses, or emulates, vertex array objects.
Definition: vtkOpenGLVertexArrayObject.h:36