Equalizer
1.6.1
|
Equalizer default implementation of a glX window. More...
#include <window.h>
Public Member Functions | |
Window (eq::Window *parent, Display *xDisplay=0, GLXEWContext *glxewContext=0) | |
Construct a new glX/X11 system window. More... | |
virtual | ~Window () |
Destruct this glX window. More... | |
GLX/X11 initialization | |
virtual bool | configInit () |
Initialize this window for the glX window system. More... | |
virtual void | configExit () |
virtual GLXFBConfig * | chooseGLXFBConfig () |
Choose a GLX framebuffer config based on the window's attributes. More... | |
virtual GLXContext | createGLXContext (GLXFBConfig *fbConfig) |
Create a glX context. More... | |
virtual bool | configInitGLXDrawable (GLXFBConfig *fbConfig) |
Initialize the window's drawable (fullscreen, pbuffer or window) and bind the glX context. More... | |
virtual bool | configInitGLXWindow (GLXFBConfig *fbConfig) |
Initialize the window with a window and bind the glX context. More... | |
virtual bool | configInitGLXPBuffer (GLXFBConfig *fbConfig) |
Initialize the window with a PBuffer and bind the glX context. More... | |
virtual void | initEventHandler () |
Register with the pipe's GLXEventHandler, called by setXDrawable(). More... | |
virtual void | exitEventHandler () |
Deregister with the GLXEventHandler, called by setXDrawable(). More... | |
Data Access. | |
virtual GLXContext | getGLXContext () const |
virtual XID | getXDrawable () const |
virtual Display * | getXDisplay () |
GLXEWContext * | glxewGetContext () |
virtual void | setXDrawable (XID drawable) |
Set the X11 drawable ID for this window. More... | |
virtual void | setGLXContext (GLXContext context) |
Set the glX rendering context for this window. More... | |
Operations. | |
virtual void | makeCurrent (const bool cache=true) const |
virtual void | swapBuffers () |
virtual void | joinNVSwapBarrier (const uint32_t group, const uint32_t barrier) |
Implementation untested for glX. More... | |
void | leaveNVSwapBarrier () |
Unbind a GLX_NV_swap_barrier. More... | |
virtual bool | processEvent (const WindowEvent &event) |
Public Member Functions inherited from eq::glx::WindowIF | |
WindowIF (eq::Window *parent) | |
Public Member Functions inherited from eq::GLWindow | |
GLWindow (Window *parent) | |
Construct a new OpenGL window. More... | |
virtual | ~GLWindow () |
Destruct a new OpenGL window. More... | |
bool | isCurrent () const |
virtual void | initGLEW () |
Initialize the GLEW context for this window. More... | |
virtual void | exitGLEW () |
De-initialize the GLEW context. More... | |
virtual const GLEWContext * | glewGetContext () const |
Get the GLEW context for this window. More... | |
virtual void | queryDrawableConfig (DrawableConfig &) |
Set up the drawable config by querying the current context. More... | |
virtual void | bindFrameBuffer () const |
Bind the window's FBO, if it uses an FBO drawable. More... | |
virtual void | flush () |
Flush all command buffers. More... | |
virtual void | finish () |
Finish execution of all commands. More... | |
virtual bool | configInitFBO () |
Build and initialize the FBO. More... | |
virtual void | configExitFBO () |
Destroy the FBO. More... | |
virtual const util::FrameBufferObject * | getFrameBufferObject () const |
Public Member Functions inherited from eq::SystemWindow | |
SystemWindow (Window *parent) | |
Create a new SystemWindow for the given eq::Window. More... | |
virtual | ~SystemWindow () |
Destroy the SystemWindow. More... | |
void | setError (const int32_t error) |
Set an error code why the last operation failed. More... | |
eq::fabric::Error | getError () const |
virtual bool | processEvent (const Event &event) |
Process an event. More... | |
bool | configInitFBO () |
Build and initialize the FBO. More... | |
void | configExitFBO () |
Destroy FBO. More... | |
Window * | getWindow () |
const Window * | getWindow () const |
Pipe * | getPipe () |
const Pipe * | getPipe () const |
Node * | getNode () |
const Node * | getNode () const |
Config * | getConfig () |
const Config * | getConfig () const |
int32_t | getIAttribute (const Window::IAttribute attr) const |
Equalizer default implementation of a glX window.
Definition at line 50 of file include/eq/client/glx/window.h.
eq::glx::Window::Window | ( | eq::Window * | parent, |
Display * | xDisplay = 0 , |
||
GLXEWContext * | glxewContext = 0 |
||
) |
Construct a new glX/X11 system window.
If no display connection or no GLXEWContext is given (the default), the constructor will try to query the corresponding data from the pipe's system pipe (GLXPipe). The GLXEWContext has to be initialized.
|
virtual |
Destruct this glX window.
|
virtual |
Choose a GLX framebuffer config based on the window's attributes.
The returned FB config has to be freed using XFree().
|
virtual |
Implements eq::SystemWindow.
|
virtual |
Initialize this window for the glX window system.
This method first call chooseGLXFBConfig(), then createGLXContext() with the chosen framebuffer config, and finally creates a drawable using configInitGLXDrawable().
Implements eq::SystemWindow.
|
virtual |
Initialize the window's drawable (fullscreen, pbuffer or window) and bind the glX context.
Sets the window's X11 drawable on success
fbConfig | the framebuffer config for the context. |
|
virtual |
Initialize the window with a PBuffer and bind the glX context.
Sets the window's X11 drawable on success
fbConfig | the framebuffer config for the context. |
|
virtual |
Initialize the window with a window and bind the glX context.
Sets the window's X11 drawable on success
fbConfig | the framebuffer config for the context. |
|
virtual |
Create a glX context.
This method does not set the window's glX context.
fbConfig | the framebuffer config for the context. |
|
virtual |
Deregister with the GLXEventHandler, called by setXDrawable().
|
inlinevirtual |
Implements eq::glx::WindowIF.
Definition at line 155 of file include/eq/client/glx/window.h.
|
inlinevirtual |
Implements eq::glx::WindowIF.
Definition at line 161 of file include/eq/client/glx/window.h.
|
inlinevirtual |
Implements eq::glx::WindowIF.
Definition at line 158 of file include/eq/client/glx/window.h.
|
inline |
|
virtual |
Register with the pipe's GLXEventHandler, called by setXDrawable().
|
virtual |
void eq::glx::Window::leaveNVSwapBarrier | ( | ) |
Unbind a GLX_NV_swap_barrier.
|
virtual |
Reimplemented from eq::GLWindow.
|
virtual |
Implements eq::glx::WindowIF.
|
virtual |
Set the glX rendering context for this window.
This function should only be called from configInit() or configExit(). The context has to be set to 0 before it is destroyed.
context | the glX rendering context. |
|
virtual |
Set the X11 drawable ID for this window.
This function should only be called from configInit() or configExit().
drawable | the X11 drawable ID. |
|
virtual |
Implements eq::SystemWindow.