34 #ifndef CXGPUIMAGEBUFFER_H_ 35 #define CXGPUIMAGEBUFFER_H_ 37 #include "cxResourceExport.h" 40 #include <boost/shared_ptr.hpp> 41 #include <boost/weak_ptr.hpp> 68 virtual void allocate(
int textureUnitIndex) = 0;
77 virtual void bind(
int textureUnitIndex) = 0;
78 virtual int getMemorySize() = 0;
85 virtual unsigned int getTextureUid()
const = 0;
108 virtual void allocate() = 0;
116 virtual void bind(
int textureUnitIndex) = 0;
119 virtual int getLutSize()
const = 0;
137 static void shutdown();
141 int getMemoryUsage(
int *textures);
Helper class for sharing GPU memory over several Views (GL contexts).
GPUImageDataBufferPtr createGPUImageDataBuffer(vtkImageDataPtr volume)
virtual ~GPUImageLutBuffer()
Repository for GPU buffers.
vtkSmartPointer< class vtkUnsignedCharArray > vtkUnsignedCharArrayPtr
boost::weak_ptr< class GPUImageDataBuffer > GPUImageDataBufferWeakPtr
boost::weak_ptr< class GPUImageLutBuffer > GPUImageLutBufferWeakPtr
GPUImageLutBufferPtr createGPUImageLutBuffer(vtkUnsignedCharArrayPtr lut)
boost::shared_ptr< class GPUImageDataBuffer > GPUImageDataBufferPtr
boost::shared_ptr< class GPUImageLutBuffer > GPUImageLutBufferPtr
virtual ~GPUImageDataBuffer()
Helper class for sharing GPU memory over several Views (GL contexts).
GPUImageBufferRepository * getGPUImageBufferRepository()
Namespace for all CustusX production code.