Plasma Engine  2.0
Loading...
Searching...
No Matches
SceneExportModifier.h
1#pragma once
2
3#include <EditorEngineProcessFramework/EditorEngineProcessFrameworkDLL.h>
4#include <Foundation/Reflection/Reflection.h>
5
6class plWorld;
7
8class PL_EDITORENGINEPROCESSFRAMEWORK_DLL plSceneExportModifier : public plReflectedClass
9{
10 PL_ADD_DYNAMIC_REFLECTION(plSceneExportModifier, plReflectedClass);
11
12public:
13 static void CreateModifiers(plHybridArray<plSceneExportModifier*, 8>& ref_modifiers);
14 static void DestroyModifiers(plHybridArray<plSceneExportModifier*, 8>& ref_modifiers);
15
16 static void ApplyAllModifiers(plWorld& ref_world, plStringView sDocumentType, const plUuid& documentGuid, bool bForExport);
17
18 virtual void ModifyWorld(plWorld& ref_world, plStringView sDocumentType, const plUuid& documentGuid, bool bForExport) = 0;
19
20 static void CleanUpWorld(plWorld& ref_world);
21};
A hybrid array uses in-place storage to handle the first few elements without any allocation....
Definition HybridArray.h:12
All classes that should be dynamically reflectable, need to be derived from this base class.
Definition DynamicRTTI.h:86
Definition SceneExportModifier.h:9
plStringView represent a read-only sub-string of a larger string, as it can store a dedicated string ...
Definition StringView.h:34
This data type is the abstraction for 128-bit Uuid (also known as GUID) instances.
Definition Uuid.h:11
A world encapsulates a scene graph of game objects and various component managers and their component...
Definition World.h:22