20 #ifndef EQ_QT_WINDOW_H
21 #define EQ_QT_WINDOW_H
23 #include <eq/qt/types.h>
24 #include <eq/glWindow.h>
31 namespace detail {
class Window; }
41 # pragma clang diagnostic push
42 # pragma clang diagnostic ignored "-Woverloaded-virtual"
45 # pragma clang diagnostic pop
70 detail::Window* impl );
104 EQ_API
void makeCurrent(
const bool cache =
true )
const override;
114 const uint32_t barrier )
override;
140 void destroyImpl( detail::Window* );
143 detail::Window*
const _impl;
144 static detail::Window* createImpl(
const WindowSettings&, QThread* );
145 friend class WindowFactory;
149 #endif // EQ_QT_WINDOW_H
EQ_API ~Window() final
Destruct this Qt window.
EQ_API void doneCurrent() const override
EQ_API void swapBuffers() override
EQ_API bool processEvent(const WindowEvent &event) override
EQ_API void leaveNVSwapBarrier()
Implementation untested for Qt.
EQ_API void makeCurrent(const bool cache=true) const override
EQ_API void configExit() override
virtual bool processEvent(const WindowEvent &event)=0
Process the given event.
EQ_API bool configInit() override
Initialize this window for the Qt window system.
A set of settings to setup an eq::SystemWindow.
The interface defining the minimum functionality for a Qt window.
Equalizer default implementation of a Qt window.
EQ_API void joinNVSwapBarrier(const uint32_t group, const uint32_t barrier) override
Implementation untested for Qt.
EQ_API GLWindow(NotifierInterface &parent, const WindowSettings &settings)
Construct a new OpenGL window.
A system window for OpenGL rendering.
EQ_API QOpenGLContext * getContext() const
The context won't be ready to be used until configInit is called.
A base class for notifying errors and events.
void moveContextToThread(QThread *thread)
Move OpenGLContext object to given thread.
A window-system event for a qt::WindowIF.
EQ_API QObject * getEventProcessor()
Use this object to make Qt events reach eq::Config when using this window for offscreen rendering wit...
EQ_API Window(NotifierInterface &parent, const WindowSettings &settings, detail::Window *impl)
Create a new window using Qt.