/* If buffer does not exist, consult the fetcher */ SoundBuffer* getFetchBuffer(const std::string &name) { SoundBuffer *buf = getBuffer(name); if(buf) return buf; if(!m_fetcher) return NULL; std::set<std::string> paths; std::set<std::string> datas; m_fetcher->fetchSounds(name, paths, datas); for (const std::string &path : paths) { loadSoundFile(name, path); } for (const std::string &data : datas) { loadSoundData(name, data); } return getBuffer(name); }
/* If buffer does not exist, consult the fetcher */ SoundBuffer* getFetchBuffer(const std::string &name) { SoundBuffer *buf = getBuffer(name); if(buf) return buf; if(!m_fetcher) return NULL; std::set<std::string> paths; std::set<std::string> datas; m_fetcher->fetchSounds(name, paths, datas); for(std::set<std::string>::iterator i = paths.begin(); i != paths.end(); ++i){ loadSoundFile(name, *i); } for(std::set<std::string>::iterator i = datas.begin(); i != datas.end(); ++i){ loadSoundData(name, *i); } return getBuffer(name); }