20 #ifndef EQ_GL_WINDOW_H
21 #define EQ_GL_WINDOW_H
23 #include <eq/systemWindow.h>
27 namespace detail {
class GLWindow; }
47 EQ_API
void makeCurrent(
const bool cache =
true )
const override;
70 EQ_API
void flush()
override;
73 EQ_API
void finish()
override;
116 GLWindow(
const GLWindow& ) =
delete;
117 GLWindow& operator=(
const GLWindow& ) =
delete;
121 detail::GLWindow*
const _impl;
128 #endif // EQ_GL_WINDOW_H
virtual EQ_API void exitGLEW()
De-initialize the GLEW context.
virtual EQ_API void configExitFBO()
Destroy the FBO.
A C++ class to abstract OpenGL frame buffer objects.
EQ_API void makeCurrent(const bool cache=true) const override
Bind the FBO and update the current cache.
EQ_API void bindFrameBuffer() const override
Bind the window's FBO, if it uses an FBO drawable.
EQ_API void doneCurrent() const override
Unbind the FBO and remove context from current cache.
virtual EQ_API ~GLWindow()
Destruct a new OpenGL window.
A set of settings to setup an eq::SystemWindow.
EQ_API bool isCurrent() const
EQ_API void updateFrameBuffer() const override
Update the window's FBO from the multisampled FBO.
EQ_API void flush() override
Flush all command buffers.
EQ_API GLWindow(NotifierInterface &parent, const WindowSettings &settings)
Construct a new OpenGL window.
EQ_API void bindDrawFrameBuffer() const override
Bind the window's draw FBO, used for multisampling.
EQ_API void finish() override
Finish execution of all commands.
A system window for OpenGL rendering.
EQ_API const util::FrameBufferObject * getFrameBufferObject() const override
A base class for notifying errors and events.
The interface definition for system-specific windowing code.
EQ_API const GLEWContext * glewGetContext() const override
Get the GLEW context for this window.
EQ_API void queryDrawableConfig(DrawableConfig &) override
Set up the drawable config by querying the current context.
virtual EQ_API void initGLEW()
Initialize the GLEW context for this window.
virtual EQ_API bool configInitFBO()
Build and initialize the FBO.