19 #ifndef EQ_WGL_WINDOW_H
20 #define EQ_WGL_WINDOW_H
22 #include <eq/client/glWindow.h>
24 #include <eq/client/wgl/types.h>
53 EQ_API
virtual HDC
getWGLDC()
const = 0;
129 {
return _wglEventHandler; }
252 EQ_API
virtual void makeCurrent(
const bool cache =
true )
const;
259 const uint32_t barrier );
297 HPBUFFERARB _wglPBuffer;
305 BOOL _screenSaverActive;
307 uint32_t _wglNVSwapGroup;
313 HWND _createWGLWindow(
const PixelViewport& pvp );
316 int _chooseWGLPixelFormatARB( HDC pfDC );
319 int _chooseWGLPixelFormat( HDC pfDC );
321 void _initSwapSync();
325 #endif // EQ_WGL_WINDOW_H
virtual HDC createWGLDisplayDC()
Create a device context for the display device of the window.
virtual ~WindowIF()
Destruct the WGL window.
virtual ~Window()
Destruct the WGL window.
The WGL DC belongs to a PBuffer.
virtual HPBUFFERARB getWGLPBufferHandle() const =0
No device context is set.
virtual void exitWGLAffinityDC()
Destroy the affinity device context.
virtual HDC getWGLAffinityDC()
The event handler for WGL.
Equalizer default implementation of a WGL window.
virtual void configExit()
A Window represents an on-screen or off-screen drawable.
void leaveNVSwapBarrier()
Unbind a WGL_NV_swap_barrier.
virtual bool configInit()
Initialize this window for the WGL window system.
virtual bool configInitWGLDrawable(int pixelFormat)
Initialize the window's drawable (pbuffer or window) and bind the WGL context.
A system window for OpenGL rendering.
const EventHandler * getWGLEventHandler() const
virtual void setWGLContext(HGLRC context)
Set the WGL rendering context for this window.
virtual HPBUFFERARB getWGLPBufferHandle() const
virtual HDC getWGLDC() const =0
virtual bool configInitWGLPBuffer(int pixelFormat)
Initialize the window with an off-screen WGL PBuffer.
WGLDCType
The type of the Win32 device context.
virtual bool configInitWGLFBO(int pixelFormat)
Initialize the window for an off-screen FBO.
A window-system event for a WindowIF.
virtual int chooseWGLPixelFormat()
Choose a pixel format based on the window's attributes.
virtual HGLRC getWGLContext() const
virtual HWND getWGLWindowHandle() const =0
virtual void joinNVSwapBarrier(const uint32_t group, const uint32_t barrier)
Join the WGL_NV_swap_group.
WGLEWContext * wglewGetContext()
virtual bool processEvent(const WindowEvent &event)
virtual bool processEvent(const WindowEvent &event)=0
Process the given event.
virtual bool configInitWGLWindow(int pixelFormat)
Initialize the window with an on-screen Win32 window.
virtual HGLRC getWGLContext() const =0
Window(eq::Window *parent)
Create a new WGL window for the given eq::Window.
virtual HGLRC createWGLContext()
Create a WGL context.
The WGL DC is a display DC.
virtual void initEventHandler()
Set up an WGLEventHandler, called by setWGLWindowHandle().
virtual bool initWGLAffinityDC()
Create, if needed, an affinity device context for this window.
virtual HDC getWGLDC() const
virtual void setWGLWindowHandle(HWND handle)
Set the Win32 window handle for this window.
virtual void swapBuffers()
virtual void makeCurrent(const bool cache=true) const
Equalizer default implementation of a WGL GPU.
virtual void setWGLPBufferHandle(HPBUFFERARB handle)
Set the Win32 off screen pbuffer handle for this window.
The WGL DC is an affinity DC.
The WGL DC belongs to a window.
virtual HDC getWGLAffinityDC()
virtual void destroyWGLContext(HGLRC context)
Destroy the given WGL context.
Includes OpenGL and GLEW headers.
The interface defining the minimum functionality for a WGL window.
virtual HWND getWGLWindowHandle() const
virtual void exitEventHandler()
Destroy the WGLEventHandler, called by setWGLWindowHandle().
WindowIF(eq::Window *parent)
Construct a new WGL window for the given eq::Window.
void setWGLDC(HDC dc, const WGLDCType type)
Set new device context and release the old DC.