28 #ifndef vtkOpenGLArrayTextureBufferAdapter_h
29 #define vtkOpenGLArrayTextureBufferAdapter_h
33 #include "vtkRenderingOpenGL2Module.h"
41 VTK_ABI_NAMESPACE_BEGIN
47 std::vector<vtkSmartPointer<vtkDataArray>>
Arrays;
57 vtkDataArray* array,
bool asScalars,
bool* integerTexture =
nullptr);
64 void ReleaseGraphicsResources(
vtkWindow* window);
74 void SetUploaded(
bool uploaded) { this->Uploaded = uploaded; }
116 struct NarrowedArrayInfo
118 std::size_t ByteLength = 0;
128 NarrowedArrayInfo AppendNarrowed(
vtkDataArray* array, std::vector<unsigned char>& dest)
const;
132 struct SubArrayUpload
134 const void* SourceId =
nullptr;
136 std::size_t ByteOffset = 0;
137 std::size_t ByteLength = 0;
141 struct UploadedLayout
143 std::vector<SubArrayUpload> Subs;
144 std::size_t TotalBytes = 0;
148 bool Scalars =
false;
151 UploadedLayout LastUpload;
153 bool Uploaded =
false;
155 bool OwnsTexture =
true;
157 bool PendingReset =
false;
160 VTK_ABI_NAMESPACE_END
vtkSmartPointer< vtkOpenGLBufferObject > Buffer
bool GetOwnsTexture() const
Get/set who owns this adapter's Texture/Buffer.
void SetPendingReset(bool pendingReset)
Get/set the pending-reset flag used to recycle an adapter across rebuild cycles.
std::vector< vtkSmartPointer< vtkDataArray > > Arrays
Interfaces vtkDataArray to an OpenGL texture buffer.
vtkTypeUInt32 vtkMTimeType
vtkSmartPointer< vtkTextureObject > Texture
window superclass for vtkRenderWindow
bool GetPendingReset() const
Get/set the pending-reset flag used to recycle an adapter across rebuild cycles.
abstract superclass for arrays of numeric data
vtkOpenGLBufferObject::ObjectType BufferType
bool GetUploaded() const
Get/set the "already uploaded" guard.
void SetOwnsTexture(bool ownsTexture)
Get/set who owns this adapter's Texture/Buffer.
void SetUploaded(bool uploaded)
Get/set the "already uploaded" guard.
vtkOpenGLBufferObject::ObjectUsage BufferUsage