Module |
|
Header |
/Engine/Source/Editor/UnrealEd/Classes/Editor/Transactor.h |
Include |
#include "Editor/Transactor.h" |
struct FPersistentObjectRef
This type is necessary because the blueprint system is destroying and creating CDOs at edit time (usually on compile, but also on load), but also stores user entered data in the CDO. We "need" changes to a CDO to persist across instances because as we undo and redo we need to apply changes to different instances of the CDO - alternatively we could destroy and create the CDO as part of a transaction (this alternative is the reason for the bunny ears around need).
DanO: My long term preference is for the editor to use a dynamic, mutable type (rather than the CDO) to store editor data. The CDO can then be re-instanced (or not) as runtime code requires.
Name | Description | ||
---|---|---|---|
|
ComponentName |
||
|
UObject * |
Object |
|
|
ReferenceType |
||
|
SubObjectHierarchyID |
Name | Description | |
---|---|---|
|
FPersistentObjectRef() |
|
|
FPersistentObjectRef ( |
Name | Description | ||
---|---|---|---|
|
UObject *... |
operator->() |
Name |
Description |
|
---|---|---|
|
EReferenceType |
This enum represents all of the different special cases we are handling with this type: |