19 #ifndef EQUTIL_PIXELBUFFEROBJECT_H
20 #define EQUTIL_PIXELBUFFEROBJECT_H
22 #include <lunchbox/lock.h>
24 #include <eq/client/api.h>
25 #include <eq/client/types.h>
26 #include <eq/fabric/error.h>
32 namespace detail {
class PixelBufferObject; }
55 const bool threadSafe );
70 EQ_API
virtual bool setup(
const size_t size,
const unsigned type );
81 EQ_API
virtual const void*
mapRead()
const;
97 EQ_API
virtual void unmap()
const;
100 EQ_API
virtual bool bind()
const;
103 EQ_API
virtual void unbind()
const;
118 unsigned getID()
const;
121 detail::PixelBufferObject*
const _impl;
126 #endif // EQUTIL_PIXELBUFFEROBJECT_H
bool isThreadSafe() const
virtual void unbind() const
Unbind the PBO.
virtual void destroy()
Unbind and de-initialize the pixel buffer object.
Error
Defines errors produced by Equalizer classes.
virtual void unmap() const
Unmap and unbind the PBO.
bool isInitialized() const
PixelBufferObject(const GLEWContext *glewContext, const bool threadSafe)
Construct a new pixel buffer object.
const eq::fabric::Error & getError() const
virtual bool bind() const
Bind the PBO.
virtual const void * mapRead() const
Bind the PBO and map its data for reading.
virtual void * mapWrite()
Bind the PBO and map its data for writing.
virtual bool setup(const size_t size, const unsigned type)
Initialize the pixel buffer object.
virtual ~PixelBufferObject()
Destruct the pixel buffer object.
A C++ class to abstract OpenGL pixel buffer objects.