VTK
9.0.1
Rendering
OpenGL2
vtkOpenGLVertexBufferObjectCache.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkOpenGLTexture.h
5
6
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7
All rights reserved.
8
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10
This software is distributed WITHOUT ANY WARRANTY; without even
11
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12
PURPOSE. See the above copyright notice for more information.
13
14
=========================================================================*/
27
#ifndef vtkOpenGLVertexBufferObjectCache_h
28
#define vtkOpenGLVertexBufferObjectCache_h
29
30
#include "
vtkObject.h
"
31
#include "vtkRenderingOpenGL2Module.h"
// For export macro
32
#include <map>
// for methods
33
34
class
vtkOpenGLVertexBufferObject
;
35
class
vtkDataArray
;
36
class
vtkTimeStamp
;
37
38
class
VTKRENDERINGOPENGL2_EXPORT
vtkOpenGLVertexBufferObjectCache
:
public
vtkObject
39
{
40
public
:
41
static
vtkOpenGLVertexBufferObjectCache
*
New
();
42
vtkTypeMacro(
vtkOpenGLVertexBufferObjectCache
,
vtkObject
);
43
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
44
52
vtkOpenGLVertexBufferObject
* GetVBO(
vtkDataArray
* array,
int
destType);
53
58
void
RemoveVBO(
vtkOpenGLVertexBufferObject
* vbo);
59
60
typedef
std::map<vtkDataArray*, vtkOpenGLVertexBufferObject*>
VBOMap
;
61
62
protected
:
63
vtkOpenGLVertexBufferObjectCache
();
64
~
vtkOpenGLVertexBufferObjectCache
()
override
;
65
66
VBOMap
MappedVBOs
;
67
68
private
:
69
vtkOpenGLVertexBufferObjectCache
(
const
vtkOpenGLVertexBufferObjectCache
&) =
delete
;
70
void
operator=(
const
vtkOpenGLVertexBufferObjectCache
&) =
delete
;
71
};
72
73
#endif
vtkOpenGLVertexBufferObjectCache::MappedVBOs
VBOMap MappedVBOs
Definition:
vtkOpenGLVertexBufferObjectCache.h:66
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkTimeStamp
record modification and/or execution time
Definition:
vtkTimeStamp.h:32
vtkObject
abstract base class for most VTK objects
Definition:
vtkObject.h:62
vtkOpenGLVertexBufferObjectCache::VBOMap
std::map< vtkDataArray *, vtkOpenGLVertexBufferObject * > VBOMap
Definition:
vtkOpenGLVertexBufferObjectCache.h:60
vtkDataArray
abstract superclass for arrays of numeric data
Definition:
vtkDataArray.h:49
vtkIndent
a simple class to control print indentation
Definition:
vtkIndent.h:33
vtkOpenGLVertexBufferObject
Definition:
vtkOpenGLVertexBufferObject.h:36
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkObject.h
vtkOpenGLVertexBufferObjectCache
manage vertex buffer objects shared within a context
Definition:
vtkOpenGLVertexBufferObjectCache.h:38
Generated on Thu Jun 24 2021 15:17:26 for VTK by
1.8.17