From 34e3a7f383826ed91ef06ec116fa36b3a1514077 Mon Sep 17 00:00:00 2001 From: Phillip Stephens Date: Sat, 21 Jan 2017 20:32:53 -0800 Subject: [PATCH] Update CSimplePool offsets --- Editor/ProjectManager.cpp | 4 ++-- Runtime/CSimplePool.cpp | 30 +++++++++++++++--------------- Runtime/CSimplePool.hpp | 11 ++++++----- hecl | 2 +- 4 files changed, 24 insertions(+), 23 deletions(-) diff --git a/Editor/ProjectManager.cpp b/Editor/ProjectManager.cpp index fdc3fd935..591903430 100644 --- a/Editor/ProjectManager.cpp +++ b/Editor/ProjectManager.cpp @@ -14,7 +14,7 @@ CToken ProjectResourcePool::GetObj(const char* name) return ret; hecl::ProjectPath path(*m_parent.project(), name); - SObjectTag tag = static_cast(x30_factory). + SObjectTag tag = static_cast(x18_factory). TagFromPath(path, hecl::SharedBlenderToken); if (tag) return CSimplePool::GetObj(tag); @@ -29,7 +29,7 @@ CToken ProjectResourcePool::GetObj(const char* name, const CVParamTransfer& pvxf return ret; hecl::ProjectPath path(*m_parent.project(), name); - SObjectTag tag = static_cast(x30_factory). + SObjectTag tag = static_cast(x18_factory). TagFromPath(path, hecl::SharedBlenderToken); if (tag) return CSimplePool::GetObj(tag, pvxfer); diff --git a/Runtime/CSimplePool.cpp b/Runtime/CSimplePool.cpp index 2e7391873..79b071830 100644 --- a/Runtime/CSimplePool.cpp +++ b/Runtime/CSimplePool.cpp @@ -6,7 +6,7 @@ namespace urde { CSimplePool::CSimplePool(IFactory& factory) -: x30_factory(factory), x34_paramXfer(new TObjOwnerParam(this)) +: x18_factory(factory), x1c_paramXfer(new TObjOwnerParam(this)) {} CToken CSimplePool::GetObj(const SObjectTag& tag, const CVParamTransfer& paramXfer) @@ -14,28 +14,28 @@ CToken CSimplePool::GetObj(const SObjectTag& tag, const CVParamTransfer& paramXf if (!tag) return {}; - auto iter = x4_resources.find(tag); - if (iter != x4_resources.end()) + auto iter = x8_resources.find(tag); + if (iter != x8_resources.end()) return CToken(iter->second); CObjectReference* ret = new CObjectReference(*this, std::unique_ptr(), tag, paramXfer); - x4_resources.emplace(std::make_pair((SObjectTag)tag, std::move(ret))); + x8_resources.emplace(std::make_pair((SObjectTag)tag, std::move(ret))); return CToken(ret); } CToken CSimplePool::GetObj(const SObjectTag& tag) { - return GetObj(tag, x34_paramXfer); + return GetObj(tag, x1c_paramXfer); } CToken CSimplePool::GetObj(const char* resourceName) { - return GetObj(resourceName, x34_paramXfer); + return GetObj(resourceName, x1c_paramXfer); } CToken CSimplePool::GetObj(const char* resourceName, const CVParamTransfer& paramXfer) { - const SObjectTag* tag = x30_factory.GetResourceIdByName(resourceName); + const SObjectTag* tag = x18_factory.GetResourceIdByName(resourceName); if (!tag) return {}; return GetObj(*tag, paramXfer); @@ -43,16 +43,16 @@ CToken CSimplePool::GetObj(const char* resourceName, const CVParamTransfer& para bool CSimplePool::HasObject(const SObjectTag& tag) const { - auto iter = x4_resources.find(tag); - if (iter != x4_resources.cend()) + auto iter = x8_resources.find(tag); + if (iter != x8_resources.cend()) return true; - return x30_factory.CanBuild(tag); + return x18_factory.CanBuild(tag); } bool CSimplePool::ObjectIsLive(const SObjectTag& tag) const { - auto iter = x4_resources.find(tag); - if (iter == x4_resources.cend()) + auto iter = x8_resources.find(tag); + if (iter == x8_resources.cend()) return false; return iter->second->IsLoaded(); } @@ -63,9 +63,9 @@ void CSimplePool::Flush() void CSimplePool::ObjectUnreferenced(const SObjectTag& tag) { - auto iter = x4_resources.find(tag); - if (iter != x4_resources.end()) - x4_resources.erase(iter); + auto iter = x8_resources.find(tag); + if (iter != x8_resources.end()) + x8_resources.erase(iter); } } diff --git a/Runtime/CSimplePool.hpp b/Runtime/CSimplePool.hpp index 77e9f660c..b2406a618 100644 --- a/Runtime/CSimplePool.hpp +++ b/Runtime/CSimplePool.hpp @@ -14,10 +14,11 @@ class CObjectReference; class CSimplePool : public IObjectStore { protected: - //std::list> x4_resources; - std::unordered_map x4_resources; - IFactory& x30_factory; - CVParamTransfer x34_paramXfer; + u8 x4_; + u8 x5_; + std::unordered_map x8_resources; + IFactory& x18_factory; + CVParamTransfer x1c_paramXfer; public: CSimplePool(IFactory& factory); CToken GetObj(const SObjectTag&, const CVParamTransfer&); @@ -26,7 +27,7 @@ public: CToken GetObj(const char*, const CVParamTransfer&); bool HasObject(const SObjectTag&) const; bool ObjectIsLive(const SObjectTag&) const; - IFactory& GetFactory() const {return x30_factory;} + IFactory& GetFactory() const {return x18_factory;} void Flush(); void ObjectUnreferenced(const SObjectTag&); }; diff --git a/hecl b/hecl index b02a7baff..51fc07f0a 160000 --- a/hecl +++ b/hecl @@ -1 +1 @@ -Subproject commit b02a7baff487bbf86102c8531e98147e00b9c54e +Subproject commit 51fc07f0a0f6e7c093f722fcb48454c65fa5f0ca