class EditorScriptManager

Handles all editor script modules, updates editor windows and similar.

Public

Constructors

EditorScriptManager

EditorScriptManager()

Methods

~EditorScriptManager

~EditorScriptManager() noexcept

Update

void Update()

Called every frame.

Updates editor windows and script modules.

QuitRequested

void QuitRequested()

Called when the user requests the application to close.

staticInstance

static T &Instance()

Returns a reference to the module instance.

Module has to have been started up first otherwise an exception will be thrown.

staticInstancePtr

static T *InstancePtr()

Returns a pointer to the module instance.

Module has to have been started up first otherwise an exception will be thrown.

staticShutDown

static void ShutDown()

Shuts down this module and frees any resources it is using.

staticIsStarted

static bool IsStarted()

Query if the module has been started.

Protected

Methods

~Module<T>

virtual ~Module<T>() = default

OnStartUp

virtual void OnStartUp()

Override if you want your module to be notified once it has been constructed and started.

OnShutDown

virtual void OnShutDown()

Override if you want your module to be notified just before it is deleted.

staticInstanceInternal

static T *&InstanceInternal()

Returns a singleton instance of this module.

staticIsDestroyed

static bool &IsDestroyed()

Checks has the Module been shut down.

staticIsStartedUp

static bool &IsStartedUp()

Checks has the Module been started up.

Private

Methods

TriggerOnInitialize

void TriggerOnInitialize()

Triggers Program::OnInitialize callback.

Should be called after startup and after assembly reload.

OnAssemblyRefreshDone

void OnAssemblyRefreshDone()

Triggered when an assembly refreshed finished.

LoadMonoTypes

void LoadMonoTypes()

Loads all managed types and methods used by this module.

Fields

mEditorAssembly

MonoAssembly * mEditorAssembly

mLastUpdateTime

float mLastUpdateTime

mProgramEdClass

MonoClass * mProgramEdClass

mUpdateMethod

MonoMethod * mUpdateMethod

mOnAssemblyRefreshAssembliesLoadedConnection

HEvent mOnAssemblyRefreshAssembliesLoadedConnection

mOnAssemblyRefreshDoneConnection

HEvent mOnAssemblyRefreshDoneConnection