19 #ifndef EQUTIL_ACCUM_H
20 #define EQUTIL_ACCUM_H
22 #include <eq/util/types.h>
28 namespace detail {
class Accum; }
43 EQ_API
Accum(
const GLEWContext*
const glewContext );
56 EQ_API
bool init(
const PixelViewport& pvp,
unsigned textureFormat );
69 EQ_API
bool resize(
const PixelViewport& pvp );
70 EQ_API
bool resize(
const int width,
const int height );
132 EQ_API
static bool usesFBO(
const GLEWContext* glewContext );
134 EQ_API
const GLEWContext* glewGetContext()
const;
137 detail::Accum*
const impl_;
142 #endif // EQUTIL_ACCUM_H
bool resize(const PixelViewport &pvp)
Resize the accumulation buffer.
~Accum()
Destruct the accumulation buffer.
Accum(const GLEWContext *const glewContext)
Construct a new accumulation buffer.
void setTotalSteps(uint32_t totalSteps)
Set the total number of accumulation steps that will be done.
bool usesFBO() const
Test if the accumulation uses the FBO implementation.
void display()
Copy the result of the accumulation to the current draw buffer.
void accum()
Accumulate a frame from the read buffer into the accumulation buffer.
bool init(const PixelViewport &pvp, unsigned textureFormat)
Initialize the accumulation buffer.
A C++ class to abstract an accumulation buffer.
uint32_t getMaxSteps() const
Get the maximum number of accumulation steps possible.
void clear()
Clear the accumulation buffer.
uint32_t getNumSteps() const
Get the current number of accumulation steps done.
void exit()
Exit the accum buffer.