!B (Sandbox) (CE-21795) Importing models with multisubmaterials via fbx switches...
[CRYENGINE.git] / Code / Sandbox / Plugins / EditorSchematyc2 / Bridge / Private / Bridge_Framework.cpp
blob42de316adfe2931118a9694e45ec0e9ae11b80e2
1 // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
3 #include "StdAfx.h"
4 #include <CrySchematyc2/IFramework.h>
6 #include "Bridge_Framework.h"
7 #include "Bridge_DomainContext.h"
9 namespace Bridge {
11 //////////////////////////////////////////////////////////////////////////
12 bool CFramework::Initialize(SSystemGlobalEnvironment& env, const SSystemInitParams& initParams)
14 return true;
17 //////////////////////////////////////////////////////////////////////////
18 void CFramework::SetGUIDGenerator(const Schematyc2::GUIDGenerator& guidGenerator)
20 Delegate()->SetGUIDGenerator(guidGenerator);
23 //////////////////////////////////////////////////////////////////////////
24 Schematyc2::SGUID CFramework::CreateGUID() const
26 return Delegate()->CreateGUID();
29 //////////////////////////////////////////////////////////////////////////
30 Schematyc2::IStringPool& CFramework::GetStringPool()
32 return Delegate()->GetStringPool();
35 //////////////////////////////////////////////////////////////////////////
36 Schematyc2::IEnvRegistry& CFramework::GetEnvRegistry()
38 return Delegate()->GetEnvRegistry();
41 //////////////////////////////////////////////////////////////////////////
42 Schematyc2::ILibRegistry& CFramework::GetLibRegistry()
44 return Delegate()->GetLibRegistry();
47 //////////////////////////////////////////////////////////////////////////
48 const char* CFramework::GetFileFormat() const
50 return Delegate()->GetFileFormat();
53 //////////////////////////////////////////////////////////////////////////
54 const char* CFramework::GetRootFolder() const
56 return Delegate()->GetRootFolder();
59 //////////////////////////////////////////////////////////////////////////
60 const char* CFramework::GetOldScriptsFolder() const
62 return Delegate()->GetOldScriptsFolder();
65 //////////////////////////////////////////////////////////////////////////
66 const char* CFramework::GetOldScriptExtension() const
68 return Delegate()->GetOldScriptExtension();
71 //////////////////////////////////////////////////////////////////////////
72 const char* CFramework::GetScriptsFolder() const
74 return Delegate()->GetScriptsFolder();
77 //////////////////////////////////////////////////////////////////////////
78 const char* CFramework::GetSettingsFolder() const
80 return Delegate()->GetSettingsFolder();
83 //////////////////////////////////////////////////////////////////////////
84 const char* CFramework::GetSettingsExtension() const
86 return Delegate()->GetSettingsExtension();
89 //////////////////////////////////////////////////////////////////////////
90 bool CFramework::IsExperimentalFeatureEnabled(const char* szFeatureName) const
92 return Delegate()->IsExperimentalFeatureEnabled(szFeatureName);
95 //////////////////////////////////////////////////////////////////////////
96 IScriptRegistry& CFramework::GetScriptRegistry()
98 return m_scriptRegistry;
101 //////////////////////////////////////////////////////////////////////////
102 ICompiler& CFramework::GetCompiler()
104 return m_compiler;
107 //////////////////////////////////////////////////////////////////////////
108 Schematyc2::IObjectManager& CFramework::GetObjectManager()
110 return Delegate()->GetObjectManager();
113 //////////////////////////////////////////////////////////////////////////
114 Schematyc2::ILog& CFramework::GetLog()
116 return Delegate()->GetLog();
119 //////////////////////////////////////////////////////////////////////////
120 Schematyc2::ILogRecorder& CFramework::GetLogRecorder()
122 return Delegate()->GetLogRecorder();
125 //////////////////////////////////////////////////////////////////////////
126 Schematyc2::IUpdateScheduler& CFramework::GetUpdateScheduler()
128 return Delegate()->GetUpdateScheduler();
131 //////////////////////////////////////////////////////////////////////////
132 Schematyc2::ITimerSystem& CFramework::GetTimerSystem()
134 return Delegate()->GetTimerSystem();
137 //////////////////////////////////////////////////////////////////////////
138 Schematyc2::ISerializationContextPtr CFramework::CreateSerializationContext(const Schematyc2::SSerializationContextParams& params) const
140 return Delegate()->CreateSerializationContext(params);
143 //////////////////////////////////////////////////////////////////////////
144 IDomainContextPtr CFramework::CreateDomainContext(const SDomainContextScope& bridgeScope) const
146 Schematyc2::SDomainContextScope schematycScope(bridgeScope.pScriptFile->GetDelegate(), bridgeScope.guid);
147 return IDomainContextPtr(new CDomainContext(Delegate()->CreateDomainContext(schematycScope), bridgeScope));
150 //////////////////////////////////////////////////////////////////////////
151 IDomainContextPtr CFramework::CreateDomainContext(const Schematyc2::IScriptElement* element)
153 SDomainContextScope bridgeScope(m_scriptRegistry.Wrapfile(const_cast<Schematyc2::IScriptFile*>(&element->GetFile())), element->GetGUID());
154 return CreateDomainContext(bridgeScope);
157 //////////////////////////////////////////////////////////////////////////
158 Schematyc2::IValidatorArchivePtr CFramework::CreateValidatorArchive(const Schematyc2::SValidatorArchiveParams& params) const
160 return Delegate()->CreateValidatorArchive(params);
163 //////////////////////////////////////////////////////////////////////////
164 Schematyc2::IGameResourceListPtr CFramework::CreateGameResoucreList() const
166 return Delegate()->CreateGameResoucreList();
169 //////////////////////////////////////////////////////////////////////////
170 Schematyc2::IResourceCollectorArchivePtr CFramework::CreateResourceCollectorArchive(Schematyc2::IGameResourceListPtr pResourceList) const
172 return Delegate()->CreateResourceCollectorArchive(pResourceList);
175 //////////////////////////////////////////////////////////////////////////
176 void CFramework::RefreshLogFileSettings()
178 return Delegate()->RefreshLogFileSettings();
181 //////////////////////////////////////////////////////////////////////////
182 void CFramework::RefreshEnv()
184 Delegate()->RefreshEnv();
187 //////////////////////////////////////////////////////////////////////////
188 Schematyc2::SFrameworkSignals& CFramework::Signals()
190 return Delegate()->Signals();
193 //////////////////////////////////////////////////////////////////////////
194 void CFramework::PrePhysicsUpdate()
196 Delegate()->PrePhysicsUpdate();
199 //////////////////////////////////////////////////////////////////////////
200 void CFramework::Update()
202 Delegate()->Update();
205 //////////////////////////////////////////////////////////////////////////
206 void CFramework::SetUpdateRelevancyContext(Schematyc2::CUpdateRelevanceContext& context)
208 Delegate()->SetUpdateRelevancyContext(context);
211 //////////////////////////////////////////////////////////////////////////
212 Schematyc2::IFramework* CFramework::Delegate() const
214 CRY_ASSERT(gEnv->pSchematyc2);
215 return gEnv->pSchematyc2;
220 CRYREGISTER_SINGLETON_CLASS(Bridge::CFramework)