Cleanup asset references code

This commit is contained in:
Wojtek Figat
2021-06-10 11:01:35 +02:00
parent 9fd62cf9aa
commit 907f289ea7
5 changed files with 110 additions and 130 deletions

View File

@@ -53,6 +53,17 @@ MonoObject* ScriptingObject::GetManagedInstance() const
return _gcHandle ? mono_gchandle_get_target(_gcHandle) : nullptr;
}
MonoObject* ScriptingObject::GetOrCreateManagedInstance() const
{
MonoObject* managedInstance = GetManagedInstance();
if (!managedInstance)
{
const_cast<ScriptingObject*>(this)->CreateManaged();
managedInstance = GetManagedInstance();
}
return managedInstance;
}
MClass* ScriptingObject::GetClass() const
{
return _type ? _type.GetType().ManagedClass : nullptr;