bool Node::configExit() { if( !isApplicationNode( )) { Config *config = static_cast< Config *>( getConfig() ); config->unmapFrameData(); } return eq::Node::configExit(); }
bool Node::configInit( const eq::uint128_t& initID ) { if( !eq::Node::configInit( initID )) return false; // All render data is static or multi-buffered, we can run asynchronously if( getIAttribute( IATTR_THREAD_MODEL ) == eq::UNDEFINED ) setIAttribute( IATTR_THREAD_MODEL, eq::ASYNC ); Config* config = static_cast< Config* >( getConfig( )); if( !isApplicationNode() && !config->loadInitData( eq::UUID( initID ))) { sendError( ERROR_EVOLVE_MAPOBJECT_FAILED ); return false; } return true; }
bool Node::configInit( const eq::uint128_t& initId ) { // All render data is static or multi-buffered, we can run asynchronously if( getIAttribute( IATTR_THREAD_MODEL ) == eq::UNDEFINED ) setIAttribute( IATTR_THREAD_MODEL, eq::ASYNC ); if( !eq::Node::configInit( initId )) return false; livre::Client* client = static_cast<livre::Client*>( getClient( ).get()); client->setIdleFunction( std::bind( &detail::Node::updateAndSendFrameRange, _impl)); if( !isApplicationNode( )) { Config *config = static_cast< Config *>( getConfig() ); config->mapFrameData( initId ); } return _impl->configInit(); }