Navigation
API > API/Editor > API/Editor/SubobjectDataInterface
Inheritance Hierarchy
- FSubobjectData
- FInheritedSubobjectData
- FChildActorSubobjectData
References
| Module | SubobjectDataInterface |
| Header | /Engine/Source/Editor/SubobjectDataInterface/Public/SubobjectData.h |
| Include | #include "SubobjectData.h" |
Syntax
struct FSubobjectData
Remarks
A struct that represents a single subobject. This can be anything, but are most commonly components attached to an actor instance or blueprint. Keeps track of the handles to its parent object and any child that it has.
If you wish to modify a subobject, use the SubobjectDataSubsystem.
Variables
| Type | Name | Description | |
|---|---|---|---|
| TArray< FSubobjectDataHandle > | ChildrenHandles | Set of child subobjects that use this subobject as a parent. | |
| FSubobjectDataHandle | Handle | Handle that will have a globally unique ID when it is constructed (i.e. when this is constructed) | |
| FSubobjectDataHandle | ParentObjectHandle | Handle to this object's parent. If this is invalid, then it is the root subobject. | |
| TWeakObjectPtr< USCS_Node > | SCSNodePtr | For now, we need a pointer to the SCS node in order to have the correct component template and to be able to get the UBlueprint* from components. | |
| TWeakObjectPtr< UObject > | WeakObjectPtr | Weak ptr to the object instance represented by this node (e.g. component template) |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FSubobjectData
(
UObject* ContextObject, |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| bool | AddChildHandleOnly
(
const FSubobjectDataHandle& InHandle |
Add the given subobject handle as a child of this. | |
| bool | Attempts to set the SCS node member variable based on the WeakObjectPtr. | ||
| bool | CanCopy () |
||
| bool | CanDelete () |
||
| bool | CanDuplicate () |
||
| bool | CanEdit () |
||
| bool | CanRename () |
||
| bool | CanReparent () |
||
| void | |||
| FSubobjectDataHandle | FindChild
(
const FSubobjectDataHandle& ChildHandle |
Attempt to find the given handle in out child array and return a pointer to it. | |
| FSubobjectDataHandle | FindChildByObject
(
UObject* ContextObject |
Attempt to find the given handle in out child array and return a pointer to it. | |
| const UActorComponent * | FindComponentInstanceInActor
(
const AActor* InActor |
||
| UActorComponent * | FindMutableComponentInstanceInActor
(
const AActor* InActor |
||
| USCS_Node * | FindSCSNodeForInstance
(
const UActorComponent* InstanceComponent, |
Anything related to an SCS node will be changed with an upcoming refactor and should remain private. | |
| FText | |||
| FText | GetAssetName () |
Get the asset name of this subobject from the asset brokerage | |
| FText | GetAssetPath () |
Get the asset path of this subobject from the asset brokerage | |
| UBlueprint * | GetBlueprint () |
||
| const TArray< FSubobjectDataHandle > & | |||
| FText | Retrieves a tooltip text describing if the component is marked Editor only or not | ||
| const UActorComponent * | GetComponentTemplate
(
bool bEvenIfPendingKill |
Deliberately non-virtual, for performance reasons. | |
| FText | |||
| FText | GetDisplayNameContextModifiers
(
bool bShowNativeComponentNames |
Returns a string that gives details about this subobject. | |
| FString | GetDisplayString
(
bool bShowNativeComponentNames |
||
| FText | Get the display name of this subobject that should be used during drag/drop operations | ||
| FSubobjectDataHandle | GetHandle () |
||
| FText | Retrieves tooltip text describing where the component was first introduced (for inherited components). | ||
| FText | Retrieves tooltip text describing the specified component's mobility. | ||
| AActor * | If this subobject is an actor, then return a pointer to that. | ||
| UActorComponent * | GetMutableComponentTemplate
(
bool bEvenIfPendingKill |
||
| T * | GetMutableObject
(
bool bEvenIfPendingKill |
||
| UObject * | GetMutableObject
(
bool bEvenIfPendingKill |
Muteable accessors for this subobject to be used by the subsystem. | |
| T * | GetMutableObjectForBlueprint
(
UBlueprint* Blueprint |
||
| const T * | GetObject
(
bool bEvenIfPendingKill |
Deliberately non-virtual, for performance reasons. | |
| const UObject * | GetObject
(
bool bEvenIfPendingKill |
||
| const T * | GetObjectForBlueprint
(
UBlueprint* Blueprint |
||
| const UObject * | GetObjectForBlueprint
(
UBlueprint* Blueprint |
May not be the same as the value returned by GetObject(). | |
| FSubobjectData * | |||
| FSubobjectDataHandle | |||
| FSubobjectDataHandle | Walks the parent heirarchy and returns the root subobject in this case | ||
| USCS_Node * | GetSCSNode
(
bool bEvenIfPendingKill |
||
| FName | |||
| FText | Sockets for attaching in the viewport. | ||
| FName | |||
| bool | HasChild
(
const FSubobjectDataHandle& ChildHandle |
Return true if the given handle is a child of this subobject. | |
| bool | HasParent () |
||
| bool | |||
| bool | IsActor () |
||
| bool | Returns true if the asset this object represents is visible | ||
| bool | IsAttachedTo
(
const FSubobjectDataHandle& InHandle |
||
| bool | |||
| bool | IsChildActor () |
||
| bool | Returns true if this subobject is a part of a child actor's hierarchy and not the root actor. | ||
| bool | IsComponent () |
Returns true if this subobject is a component. | |
| bool | |||
| bool | |||
| bool | True if this SCS node's blueprint is a child of another Blueprint-generated class, which means that we must use the InheritableComponentHandler | ||
| bool | |||
| bool | |||
| bool | True if this subobject is an instance of an inherited component (its owner is an instanced actor) | ||
| bool | |||
| bool | IsRootActor () |
||
| bool | |||
| bool | |||
| bool | IsValid () |
True if this subobject's handle is valid | |
| bool | RemoveChildHandleOnly
(
const FSubobjectDataHandle& InHandle |
Add the given subobject handle as a child of this. | |
| bool | Returns true if the component template's FName starts with USceneComponent::GetDefaultSceneRootVariableName | ||
| void | SetParentHandle
(
const FSubobjectDataHandle& NewParentHandle |
||
| void | SetSocketName
(
FName InNewName |
||
| void | SetupAttachment
(
FName SocketName, |