20 #ifndef EQ_SYSTEM_WINDOW_H    21 #define EQ_SYSTEM_WINDOW_H    24 #include <eq/windowSettings.h>     74     EQ_API 
virtual void makeCurrent( 
const bool cache = 
true ) 
const = 0;
    97     EQ_API 
virtual void flush() = 0;
   100     EQ_API 
virtual void finish() = 0;
   113                                            const uint32_t barrier ) = 0;
   153     EQ_API EventOCommand 
sendError( 
const uint32_t error );
   159     EQ_API 
bool processEvent( EventType type, SizeEvent& event );
   162     EQ_API 
bool processEvent( EventType type, PointerEvent& event );
   165     EQ_API 
bool processEvent( EventType type, KeyEvent& event );
   168     EQ_API 
bool processEvent( EventType type, AxisEvent& event );
   171     EQ_API 
bool processEvent( EventType type, ButtonEvent& event );
   192     EQ_API uint32_t getColorFormat() 
const;
   195     EQ_API 
void setName( 
const std::string& name );
   198     EQ_API 
const std::string& 
getName() 
const;
   216 #endif // EQ_SYSTEM_WINDOW_H virtual util::FrameBufferObject * getFrameBufferObject()
 
virtual EQ_API void updateFrameBuffer() const  =0
Update the window's FBO from the multisampled FBO. 
 
EQ_API EventOCommand sendError(const uint32_t error)
Send a window error event to the application node. 
 
EQ_API int32_t getIAttribute(const WindowSettings::IAttribute attr) const 
 
EQ_API const SystemWindow * getSharedContextWindow() const 
 
EQ_API const std::string & getName() const 
 
A C++ class to abstract OpenGL frame buffer objects. 
 
virtual EQ_API ~SystemWindow()
Destroy the SystemWindow. 
 
IAttribute
Window attributes. 
 
virtual EQ_API void swapBuffers()=0
Swap the front and back buffer. 
 
A set of settings to setup an eq::SystemWindow. 
 
EQ_API void setName(const std::string &name)
Set the window's name. 
 
EQ_API void setPixelViewport(const PixelViewport &pvp)
Set the window's pixel viewport wrt its parent pipe. 
 
virtual EQ_API void joinNVSwapBarrier(const uint32_t group, const uint32_t barrier)=0
Join a NV_swap_group. 
 
virtual EQ_API void bindDrawFrameBuffer() const  =0
Bind the window's draw FBO, used for multisampling. 
 
virtual const util::FrameBufferObject * getFrameBufferObject() const 
 
virtual EQ_API void finish()=0
Finish execution of all commands. 
 
EQ_API SystemWindow(NotifierInterface &parent, const WindowSettings &settings)
Create a new SystemWindow for the given eq::Window. 
 
A base class for notifying errors and events. 
 
EQ_API const PixelViewport & getPixelViewport() const 
 
virtual EQ_API bool configInit()=0
Initialize this system window. 
 
virtual EQ_API void configExit()=0
De-initialize this system window. 
 
EQ_API bool processEvent(EventType type)
Process a stateless event. 
 
virtual EQ_API void makeCurrent(const bool cache=true) const  =0
Make the system window rendering context and drawable current. 
 
The Equalizer client library. 
 
virtual EQ_API void queryDrawableConfig(DrawableConfig &dc)=0
Set up the given drawable based on the current context. 
 
The interface definition for system-specific windowing code. 
 
virtual const GLEWContext * glewGetContext() const 
Get the GLEW context for this window. 
 
virtual EQ_API void bindFrameBuffer() const  =0
Bind the window's FBO, if it uses an FBO drawable. 
 
virtual EQ_API void doneCurrent() const  =0
This results in no context being current in the current thread. 
 
virtual EQ_API void flush()=0
Flush all command buffers.