Window::Window( Pipe* parent ) : Super( parent ) , _sharedContextWindow( 0 ) // default set below , _transferWindow( 0 ) , _systemWindow( 0 ) , _state( STATE_STOPPED ) , _objectManager( 0 ) , _lastTime ( 0.0f ) , _avgFPS ( 0.0f ) , _lastSwapTime( 0 ) { const Windows& windows = parent->getWindows(); if( windows.empty( )) setSharedContextWindow( this ); else setSharedContextWindow( windows.front( )); }
bool configInitOSWindow(const uint32_t id) { Widget* widget = Widget::getInstance(); if (!widget) { // Share context only between Eq-created OS windows eq::OSWindow* osWindow = getSharedContextWindow()->getOSWindow(); if (dynamic_cast<GLWindow*> (osWindow)) { const std::vector<eq::Window*>& windows = getPipe()->getWindows(); EQASSERT( windows.size() > 1 ); setSharedContextWindow(windows[1]); } return eq::Window::configInitOSWindow(id); } setOSWindow(new GLWindow(this, widget)); return true; }