{lyn8865} Adding DataTypes::ScriptProcessorFallbackLogic (#6396)

* {lyn8865} Adding DataTypes::ScriptProcessorFallbackLogic

- Give the user an option how to handle fallback logic for script rules

Signed-off-by: Allen Jackson <23512001+jackalbe@users.noreply.github.com>

* the new code found an error in a Python script... it seems to work!

Signed-off-by: Allen Jackson <23512001+jackalbe@users.noreply.github.com>

* fixing up the regression test

Signed-off-by: Jackson <23512001+jackalbe@users.noreply.github.com>

* dump version number

Signed-off-by: Allen Jackson <23512001+jackalbe@users.noreply.github.com>
This commit is contained in:
Allen Jackson
2022-01-05 16:08:58 -06:00
committed by GitHub
parent 8a271cabb3
commit 6c3d5c434e
8 changed files with 126 additions and 9 deletions
@@ -14,6 +14,9 @@
namespace AZ
{
// Enum types must have a TypeId tied to it in order for the reflection to succeed.
AZ_TYPE_INFO_SPECIALIZE(SceneAPI::DataTypes::ScriptProcessorFallbackLogic, "{3DCABF3D-E8EF-43E7-B3C7-373E05825F60}");
namespace SceneAPI
{
namespace SceneData
@@ -23,13 +26,23 @@ namespace AZ
return m_scriptFilename;
}
DataTypes::ScriptProcessorFallbackLogic ScriptProcessorRule::GetScriptProcessorFallbackLogic() const
{
return m_fallbackLogic;
}
void ScriptProcessorRule::Reflect(AZ::ReflectContext* context)
{
AZ::SerializeContext* serializeContext = azrtti_cast<AZ::SerializeContext*>(context);
if (serializeContext)
{
serializeContext->Class<ScriptProcessorRule, DataTypes::IScriptProcessorRule>()->Version(1)
->Field("scriptFilename", &ScriptProcessorRule::m_scriptFilename);
serializeContext->Class<ScriptProcessorRule, DataTypes::IScriptProcessorRule>()->Version(2)
->Field("scriptFilename", &ScriptProcessorRule::m_scriptFilename)
->Field("fallbackLogic", &ScriptProcessorRule::m_fallbackLogic);
serializeContext->Enum<DataTypes::ScriptProcessorFallbackLogic>()
->Value("FailBuild", DataTypes::ScriptProcessorFallbackLogic::FailBuild)
->Value("ContinueBuild", DataTypes::ScriptProcessorFallbackLogic::ContinueBuild);
AZ::EditContext* editContext = serializeContext->GetEditContext();
if (editContext)