19 #ifndef EQ_WGL_WINDOW_H 20 #define EQ_WGL_WINDOW_H 22 #include <eq/glWindow.h> 24 #include <eq/wgl/types.h> 48 EQ_API
virtual HGLRC getWGLContext()
const = 0;
51 EQ_API
virtual HWND getWGLWindowHandle()
const = 0;
57 EQ_API
virtual HDC getWGLDC()
const = 0;
104 EQ_API
virtual ~Window();
117 EQ_API
virtual void setWGLContext(HGLRC context);
129 EQ_API
virtual void setWGLWindowHandle(HWND handle);
132 EQ_API
virtual HWND getWGLWindowHandle()
const;
138 EQ_API
virtual HDC getWGLDC()
const;
141 EQ_API
virtual HGLRC getWGLContext()
const;
160 EQ_API
virtual bool configInit();
163 EQ_API
virtual void configExit();
171 EQ_API
virtual bool initWGLAffinityDC();
174 EQ_API
virtual void exitWGLAffinityDC();
177 EQ_API
virtual HDC getWGLAffinityDC();
188 EQ_API
virtual HDC createWGLDisplayDC();
199 EQ_API
virtual int chooseWGLPixelFormat();
210 EQ_API
virtual bool configInitWGLDrawable(
int pixelFormat);
221 EQ_API
virtual bool configInitWGLWindow(
int pixelFormat);
224 EQ_API
virtual bool configInitWGLFBO(
int pixelFormat);
234 EQ_API
virtual HGLRC createWGLContext();
237 EQ_API
virtual void destroyWGLContext(HGLRC context);
243 EQ_API
virtual void initEventHandler();
249 EQ_API
virtual void exitEventHandler();
255 EQ_API
virtual void makeCurrent(
const bool cache =
true)
const;
258 EQ_API
virtual void doneCurrent()
const;
261 EQ_API
virtual void swapBuffers();
264 EQ_API
virtual void joinNVSwapBarrier(
const uint32_t group,
265 const uint32_t barrier);
268 void leaveNVSwapBarrier();
270 EQ_API
bool processEvent(EventType type, PointerEvent& event)
override;
271 EQ_API
bool processEvent(EventType type)
override;
276 EQ_API WGLEWContext* wglewGetContext();
279 detail::Window*
const _impl;
282 HWND _createWGLWindow(
const PixelViewport& pvp);
285 int _chooseWGLPixelFormatARB(HDC pfDC);
288 int _chooseWGLPixelFormat(HDC pfDC);
290 void _initSwapSync();
291 void _resize(
const PixelViewport& pvp)
override;
295 #endif // EQ_WGL_WINDOW_H The interface defining the minimum functionality for a WGL window.
Equalizer default implementation of a WGL window.
virtual ~WindowIF()
Destruct the WGL window.
A set of settings to setup an eq::SystemWindow.
virtual bool processEvent(EventType type, PointerEvent &event)
Process a mouse event.
Equalizer default implementation of a WGL GPU.
The event handler for WGL.
virtual bool processEvent(ButtonEvent &event)
Process a button event.
virtual bool processEvent(EventType)
Process a stateless event.
WindowIF(NotifierInterface &parent, const WindowSettings &settings)
Construct a new WGL window for the given eq::Window.
Includes operating system headers for OpenGL and the used window system(s) correctly.
A system window for OpenGL rendering.
A base class for notifying errors and events.
EQ_API bool processEvent(EventType type)
Process a stateless event.
The Equalizer client library.
virtual HDC getWGLAffinityDC()
virtual bool processEvent(EventType type, SizeEvent &event)
Process a (re)size event.
virtual bool processEvent(EventType type, KeyEvent &event)
Process a keyboard event.
virtual bool processEvent(AxisEvent &event)
Process an axis event.