14 #ifndef vtkOpenGLBufferObject_h 15 #define vtkOpenGLBufferObject_h 17 #include "vtkRenderingOpenGL2Module.h" 54 int GetHandle()
const;
57 bool IsReady()
const {
return this->Dirty ==
false; }
76 bool Upload(
const T *array,
size_t numElements,
ObjectType type);
93 void ReleaseGraphicsResources();
106 bool UploadInternal(
const void *buffer,
size_t size,
ObjectType objectType);
122 this->Error =
"Refusing to upload empty array.";
126 return this->UploadInternal(&array[0],
127 array.size() *
sizeof(
typename T::value_type),
133 const T *array,
size_t numElements,
138 this->Error =
"Refusing to upload empty array.";
141 return this->UploadInternal(array,
142 numElements *
sizeof(T),
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
std::string GetError() const
Return a string describing errors.
a simple class to control print indentation
abstract superclass for arrays of numeric data
object to represent cell connectivity
bool IsReady() const
Determine if the buffer object is ready to be used.
bool Upload(const T &array, ObjectType type)
Upload data to the buffer object.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points