Something went wrong. Try again.
OpenMW is an open implementation of the Morrowind engine
Something went wrong. Try again.
804 B · 30 lines
C++
12345678910111213141516171819202122232425262728293031#include "bgsmfilemanager.hpp"
#include <components/vfs/manager.hpp>
#include "objectcache.hpp"
namespace Resource{
BgsmFileManager::BgsmFileManager(const VFS::Manager* vfs, double expiryDelay) : ResourceManager(vfs, expiryDelay) { }
Bgsm::MaterialFilePtr BgsmFileManager::get(VFS::Path::NormalizedView name) { if (Bgsm::MaterialFilePtr cached = mCache->getRefFromObjectCache(name)) return cached;
Bgsm::MaterialFilePtr file = Bgsm::parse(mVFS->get(name)); mCache->addEntryToObjectCache(name.value(), file); return file; }
void BgsmFileManager::reportStats(unsigned int frameNumber, osg::Stats* stats) const { Resource::reportStats("BSShader Material", frameNumber, mCache->getStats(), *stats); }
}