1 // Copyright 2001-2019 Crytek GmbH / Crytek Group. All rights reserved.
4 #include "Script/Elements/ScriptModule.h"
6 #include <CrySchematyc2/GUIDRemapper.h>
7 #include <CrySchematyc2/Serialization/ISerializationContext.h>
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
)
18 , m_scopeGUID(scopeGUID
)
22 EAccessor
CScriptModule::GetAccessor() const
24 return EAccessor::Private
;
27 SGUID
CScriptModule::GetGUID() const
32 SGUID
CScriptModule::GetScopeGUID() const
37 bool CScriptModule::SetName(const char* szName
)
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");
72 void CScriptModule::RemapGUIDs(IGUIDRemapper
& guidRemapper
)
74 m_guid
= guidRemapper
.Remap(m_guid
);
75 m_scopeGUID
= guidRemapper
.Remap(m_scopeGUID
);