2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-08 21:07:42 +00:00

Aux-info resource sharing; some rigging stubs

This commit is contained in:
Jack Andersen
2016-04-04 15:51:25 -10:00
parent 806cd54b75
commit 5cd372592c
27 changed files with 287 additions and 36 deletions

View File

@@ -6,9 +6,39 @@ namespace urde
{
static logvisor::Module Log("URDE::ProjectManager");
CToken ProjectResourcePool::GetObj(char const* name)
{
CToken ret = CSimplePool::GetObj(name);
if (ret)
return ret;
hecl::ProjectPath path(*m_parent.project(), name);
SObjectTag tag = static_cast<ProjectResourceFactoryBase&>(x30_factory).
TagFromPath(path, hecl::SharedBlenderToken);
if (tag)
return CSimplePool::GetObj(tag);
return {};
}
CToken ProjectResourcePool::GetObj(char const* name, const CVParamTransfer& pvxfer)
{
CToken ret = CSimplePool::GetObj(name, pvxfer);
if (ret)
return ret;
hecl::ProjectPath path(*m_parent.project(), name);
SObjectTag tag = static_cast<ProjectResourceFactoryBase&>(x30_factory).
TagFromPath(path, hecl::SharedBlenderToken);
if (tag)
return CSimplePool::GetObj(tag, pvxfer);
return {};
}
bool ProjectManager::m_registeredSpecs = false;
ProjectManager::ProjectManager(ViewManager &vm)
: m_vm(vm), m_clientProc(1), m_factoryMP1(m_clientProc), m_objStore(m_factoryMP1)
: m_vm(vm), m_clientProc(1), m_factoryMP1(m_clientProc), m_objStore(m_factoryMP1, *this)
{
if (!m_registeredSpecs)
{