Files
UnrealEngineUWP/Engine/Source/Editor/Persona/Private/EditorObjectsTracker.cpp
ryan durand 627baf970a Updating copyright for Engine Editor.
#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]
2019-12-26 15:33:43 -05:00

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;
}