16#ifndef vtkOpenGLRenderTimerLog_h
17#define vtkOpenGLRenderTimerLog_h
20#include "vtkRenderingOpenGL2Module.h"
a simple class to control print indentation
std::queue< Frame > ReadyFrames
bool IsEventReady(OGLEvent &event)
void ForceCloseEvent(OGLEvent &event)
Frame Convert(const OGLFrame &oglFrame)
OGLEvent & WalkOpenEvents(OGLEvent &event)
bool DoLogging() VTK_FUTURE_CONST
bool IsFrameReady(OGLFrame &frame)
std::queue< vtkOpenGLRenderTimer * > TimerPool
vtkOpenGLRenderTimer * NewTimer()
void CheckPendingFrames()
static vtkOpenGLRenderTimerLog * New()
~vtkOpenGLRenderTimerLog() override
void MarkFrame() override
Call to mark the start of a new frame, or the end of an old one.
void ReleaseOGLFrame(OGLFrame &frame)
OGLEvent * DeepestOpenEvent()
void MarkEndEvent() override
Mark the beginning or end of an event.
Frame PopFirstReadyFrame() override
Retrieve the first available frame's timing info.
bool GetLoggingEnabled() VTK_FUTURE_CONST override
Overridden to do support check before returning.
std::deque< OGLFrame > PendingFrames
void ReleaseTimer(vtkOpenGLRenderTimer *timer)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void ReleaseGraphicsResources() override
Releases any resources allocated on the graphics device.
bool IsSupported() VTK_FUTURE_CONST override
Returns true if stream timings are implemented for the current graphics backend.
void ReleaseOGLEvent(OGLEvent &event)
vtkOpenGLRenderTimerLog()
void ForceCloseFrame(OGLFrame &frame)
void MarkStartEvent(const std::string &name) override
Mark the beginning or end of an event.
bool FrameReady() override
Returns true if there are any frames ready with complete timing info.
Asynchronously measures GPU execution time for a single event.
std::vector< OGLEvent > Events
vtkOpenGLRenderTimer * Timer
std::vector< OGLEvent > Events
Container for a single timed event.
Container for a frame's events.