You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#rnx #rb none #ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904 #ROBOMERGE-BOT: (v613-10869866) [CL 10870586 by ryan durand in Main branch]
33 lines
897 B
C++
33 lines
897 B
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#include "EditorObjectsTracker.h"
|
|
#include "UObject/Class.h"
|
|
#include "UObject/Package.h"
|
|
|
|
void FEditorObjectTracker::AddReferencedObjects( FReferenceCollector& Collector )
|
|
{
|
|
Collector.AddReferencedObjects(EditorObjMap);
|
|
Collector.AddReferencedObjects(EditorObjectArray);
|
|
}
|
|
|
|
UObject* FEditorObjectTracker::GetEditorObjectForClass( UClass* EdClass )
|
|
{
|
|
UObject *Obj = (bAllowOnePerClass && EditorObjMap.Contains(EdClass) ? *EditorObjMap.Find(EdClass) : nullptr);
|
|
|
|
if (Obj == NULL)
|
|
{
|
|
FString ObjName = MakeUniqueObjectName(GetTransientPackage(), EdClass).ToString();
|
|
ObjName += "_EdObj";
|
|
Obj = NewObject<UObject>(GetTransientPackage(), EdClass, FName(*ObjName), RF_Public | RF_Standalone | RF_Transient);
|
|
if (bAllowOnePerClass)
|
|
{
|
|
EditorObjMap.Add(EdClass, Obj);
|
|
}
|
|
else
|
|
{
|
|
EditorObjectArray.Add(Obj);
|
|
}
|
|
}
|
|
return Obj;
|
|
}
|