void realise () { ASSERT_MESSAGE(m_unrealised != 0, "ModelResource::realise: already realised"); if (--m_unrealised == 0) { m_path = rootPath(m_originalName); m_name = path_make_relative(m_originalName, m_path); m_observers.realise(); } }
void unrealise() { if(++m_unrealised == 1) { m_observers.unrealise(); //globalOutputStream() << "ModelResource::unrealise: " << m_path.c_str() << m_name.c_str() << "\n"; clearModel(); } }
void realise() { ASSERT_MESSAGE(m_unrealised != 0, "ModelResource::realise: already realised"); if(--m_unrealised == 0) { m_path = rootPath(m_originalName.c_str()); m_name = path_make_relative(m_originalName.c_str(), m_path.c_str()); //globalOutputStream() << "ModelResource::realise: " << m_path.c_str() << m_name.c_str() << "\n"; m_observers.realise(); } }
void Radiant_Shutdown (void) { Environment::Instance().deletePathsFromRegistry(); GlobalMRU().saveRecentFiles(); g_VFSModuleObserver.unrealise(); Environment::Instance().setMapsPath(""); g_gameModeObservers.unrealise(); g_gameToolsPathObservers.unrealise(); Radiant_Destroy(); }
void realise(){ if ( --m_unrealised == 0 ) { globalOutputStream() << "searching vfs directory " << makeQuoted( "def" ) << " for *.def\n"; GlobalFileSystem().forEachFile( "def/", "def", makeCallbackF(EntityClassDoom3_loadFile) ); { for ( Models::iterator i = g_models.begin(); i != g_models.end(); ++i ) { Model_resolveInheritance( ( *i ).first.c_str(), ( *i ).second ); } } { for ( EntityClasses::iterator i = g_EntityClassDoom3_classes.begin(); i != g_EntityClassDoom3_classes.end(); ++i ) { EntityClass_resolveInheritance( ( *i ).second ); if ( !string_empty( ( *i ).second->m_modelpath.c_str() ) ) { Models::iterator j = g_models.find( ( *i ).second->m_modelpath ); if ( j != g_models.end() ) { ( *i ).second->m_modelpath = ( *j ).second.m_mesh; ( *i ).second->m_skin = ( *j ).second.m_skin; } } eclass_capture_state( ( *i ).second ); StringOutputStream usage( 256 ); usage << "-------- NOTES --------\n"; if ( !string_empty( ( *i ).second->m_comments.c_str() ) ) { usage << ( *i ).second->m_comments.c_str() << "\n"; } usage << "\n-------- KEYS --------\n"; for ( EntityClassAttributes::iterator j = ( *i ).second->m_attributes.begin(); j != ( *i ).second->m_attributes.end(); ++j ) { const char* name = EntityClassAttributePair_getName( *j ); const char* description = EntityClassAttributePair_getDescription( *j ); if ( !string_equal( name, description ) ) { usage << EntityClassAttributePair_getName( *j ) << " : " << EntityClassAttributePair_getDescription( *j ) << "\n"; } } ( *i ).second->m_comments = usage.c_str(); } } m_observers.realise(); } }
void detach( ModuleObserver& observer ){ m_observers.detach( observer ); }
void attach( ModuleObserver& observer ){ m_observers.attach( observer ); }
void unrealise(){ if ( ++m_unrealised == 1 ) { m_observers.unrealise(); EntityClassDoom3_clear(); } }
void Radiant_detachGameToolsPathObserver (ModuleObserver& observer) { g_gameToolsPathObservers.detach(observer); }
void shutdown() { g_observers.unrealise(); globalOutputStream() << "filesystem shutdown\n"; Shutdown(); }
void initialise() { globalOutputStream() << "filesystem initialised\n"; g_observers.realise(); }