VTK
dox
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 "vtkRenderingOpenGL2Module.h"
// For export macro
31
#include "
vtkObject.h
"
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(
53
vtkDataArray
*array,
54
int
destType);
55
60
void
RemoveVBO(
vtkOpenGLVertexBufferObject
*vbo);
61
62
typedef
std::map<vtkDataArray*, vtkOpenGLVertexBufferObject *>
VBOMap
;
63
64
protected
:
65
vtkOpenGLVertexBufferObjectCache
();
66
~
vtkOpenGLVertexBufferObjectCache
()
override
;
67
68
VBOMap
MappedVBOs
;
69
70
private
:
71
vtkOpenGLVertexBufferObjectCache
(
const
vtkOpenGLVertexBufferObjectCache
&) =
delete
;
72
void
operator=(
const
vtkOpenGLVertexBufferObjectCache
&) =
delete
;
73
74
};
75
76
#endif
vtkOpenGLVertexBufferObjectCache::MappedVBOs
VBOMap MappedVBOs
Definition:
vtkOpenGLVertexBufferObjectCache.h:68
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:35
vtkObject
abstract base class for most VTK objects
Definition:
vtkObject.h:59
vtkOpenGLVertexBufferObjectCache::VBOMap
std::map< vtkDataArray *, vtkOpenGLVertexBufferObject * > VBOMap
Definition:
vtkOpenGLVertexBufferObjectCache.h:62
vtkDataArray
abstract superclass for arrays of numeric data
Definition:
vtkDataArray.h:54
vtkIndent
a simple class to control print indentation
Definition:
vtkIndent.h:39
vtkOpenGLVertexBufferObject
Definition:
vtkOpenGLVertexBufferObject.h:38
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 by
1.8.16