!B (Sandbox) (CE-21795) Importing models with multisubmaterials via fbx switches...
[CRYENGINE.git] / Code / CryEngine / CrySchematyc2 / Script / Elements / ScriptModule.cpp
blob73d6b86227c26952ecc13791505e4de185b5e2f8
1 // Copyright 2001-2019 Crytek GmbH / Crytek Group. All rights reserved.
3 #include "StdAfx.h"
4 #include "Script/Elements/ScriptModule.h"
6 #include <CrySchematyc2/GUIDRemapper.h>
7 #include <CrySchematyc2/Serialization/ISerializationContext.h>
9 namespace Schematyc2
11 CScriptModule::CScriptModule(IScriptFile& file)
12 : CScriptElementBase(EScriptElementType::Module, file)
15 CScriptModule::CScriptModule(IScriptFile& file, const SGUID& guid, const SGUID& scopeGUID, const char* szName)
16 : CScriptElementBase(EScriptElementType::Module, file)
17 , m_guid(guid)
18 , m_scopeGUID(scopeGUID)
19 , m_name(szName)
22 EAccessor CScriptModule::GetAccessor() const
24 return EAccessor::Private;
27 SGUID CScriptModule::GetGUID() const
29 return m_guid;
32 SGUID CScriptModule::GetScopeGUID() const
34 return m_scopeGUID;
37 bool CScriptModule::SetName(const char* szName)
39 m_name = szName;
40 return true;
43 const char* CScriptModule::GetName() const
45 return m_name.c_str();
48 void CScriptModule::EnumerateDependencies(const ScriptDependancyEnumerator& enumerator) const {}
50 void CScriptModule::Refresh(const SScriptRefreshParams& params) {}
52 void CScriptModule::Serialize(Serialization::IArchive& archive)
54 CRY_PROFILE_FUNCTION(PROFILE_LOADING_ONLY);
56 CScriptElementBase::Serialize(archive);
58 SerializationContext::SetValidatorLink(archive, SValidatorLink(m_guid)); // #SchematycTODO : Can we set this from CScriptElementBase?
59 switch(SerializationContext::GetPass(archive))
61 case ESerializationPass::PreLoad:
62 case ESerializationPass::Save:
64 archive(m_guid, "guid");
65 archive(m_scopeGUID, "scope_guid");
66 archive(m_name, "name");
67 break;
72 void CScriptModule::RemapGUIDs(IGUIDRemapper& guidRemapper)
74 m_guid = guidRemapper.Remap(m_guid);
75 m_scopeGUID = guidRemapper.Remap(m_scopeGUID);