/** This function is used to re-initialise the file-manager after reading in * the user configuration data. */ void FileManager::reInit() { m_file_system = irr_driver->getDevice()->getFileSystem(); m_file_system->grab(); // Note that we can't push the texture search path in the constructor // since this also adds a file archive to te file system - and // m_file_system is deleted (in irr_driver) after pushTextureSearchPath(m_subdir_name[TEXTURE]); if(fileExists(m_subdir_name[TEXTURE]+"deprecated/")) pushTextureSearchPath(m_subdir_name[TEXTURE]+"deprecated/"); pushTextureSearchPath(m_subdir_name[GUI]); pushModelSearchPath (m_subdir_name[MODEL]); pushMusicSearchPath (m_subdir_name[MUSIC]); // Add more paths from the STK_MUSIC_PATH environment variable if(getenv("SUPERTUXKART_MUSIC_PATH")!=NULL) { std::string path=getenv("SUPERTUXKART_MUSIC_PATH"); std::vector<std::string> dirs = StringUtils::splitPath(path); for(int i=0;i<(int)dirs.size(); i++) pushMusicSearchPath(dirs[i]); } } // reInit
/** This function is used to re-initialise the file-manager after reading in * the user configuration data. */ void FileManager::setDevice(IrrlichtDevice *device) { m_device = device; //std::cout << "^^^^^^^^ GRABBING m_device (FileManager) ^^^^^^^^\n"; m_device->grab(); // To make sure that the device still exists while // file_manager has a pointer to the file system. m_file_system = m_device->getFileSystem(); TrackManager::addTrackSearchDir(m_root_dir+"/data/tracks"); KartPropertiesManager::addKartSearchDir(m_root_dir+"/data/karts"); pushTextureSearchPath(m_root_dir+"/data/textures/"); pushModelSearchPath (m_root_dir+"/data/models/" ); pushMusicSearchPath (m_root_dir+"/data/music/" ); // Add more paths from the STK_MUSIC_PATH environment variable if(getenv("SUPERTUXKART_MUSIC_PATH")!=NULL) { std::string path=getenv("SUPERTUXKART_MUSIC_PATH"); std::vector<std::string> dirs = StringUtils::splitPath(path); for(int i=0;i<(int)dirs.size(); i++) pushMusicSearchPath(dirs[i]); } } // reInit