Navigation
API > API/Runtime > API/Runtime/CoreUObject > API/Runtime/CoreUObject/UObject
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UField
- UStruct
- UClass
- UBlueprintGeneratedClass
- UAnimBlueprintGeneratedClass
- UDisplayClusterBlueprintGeneratedClass
- UMVVMViewModelBlueprintGeneratedClass
- URenderGridBlueprintGeneratedClass
- URigVMBlueprintGeneratedClass
- UControlRigBlueprintGeneratedClass
- UWidgetBlueprintGeneratedClass
- UOptimusValueContainerGeneratorClass
- URigVMMemoryStorageGeneratorClass
- UFunction
- UDelegateFunction
- USparseDelegateFunction
- UScriptStruct
- UAnimBlueprintGeneratedStruct
- UMovieSceneKeyStructType
- UPropertyBag
- UUserDefinedStruct
- UAISenseBlueprintListener
References
| Module | CoreUObject |
| Header | /Engine/Source/Runtime/CoreUObject/Public/UObject/Class.h |
| Include | #include "UObject/Class.h" |
Syntax
class UStruct :
public UField,
private FStructBaseChain
Remarks
Base class for all UObject types that contain fields.
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bHasAssetRegistrySearchableProperties | True if this struct has Asset Registry searchable properties | |
| FField * | ChildProperties | Pointer to start of linked list of child fields | |
| TObjectPtr< UField > | Children | Pointer to start of linked list of child fields | |
| FProperty * | DestructorLink | In memory only: Linked list of properties requiring destruction. | |
| int32 | FieldPathSerialNumber | Unique id incremented each time this class properties get destroyed | |
| int32 | MinAlignment | Alignment of structure in memory, structure will be at least this large | |
| FProperty * | PostConstructLink | In memory only: Linked list of properties requiring post constructor initialization | |
| int32 | PropertiesSize | Total size of all UProperties, the allocated structure may be larger due to alignment | |
| FProperty * | PropertyLink | In memory only: Linked list of properties from most-derived to base | |
| TArray< TObjectPtr< UPropertyWrapper > > | PropertyWrappers | List of wrapper UObjects for FProperties | |
| FProperty * | RefLink | In memory only: Linked list of object reference properties from most-derived to base | |
| TArray< uint8 > | Script | Script bytecode associated with this object | |
| TArray< TObjectPtr< UObject > > | ScriptAndPropertyObjectReferences | Array of object references embedded in script code and referenced by FProperties. | |
| FUnresolvedScriptPropertiesArray * | UnresolvedScriptProperties | Contains a list of script properties that couldn't be resolved at load time | |
| const FUnversionedStructSchema * | UnversionedEditorSchema | Cached schema for optimized unversioned property serialization, with editor data, owned by this. | |
| const FUnversionedStructSchema * | UnversionedGameSchema | Cached schema for optimized unversioned and filtereditoronly property serialization, owned by this. |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UStruct
(
const FObjectInitializer& ObjectInitializer |
|||
| COREUOBJECT_API | UStruct
(
FVTableHelper& Helper |
DO NOT USE. This constructor is for internal usage only for hot-reload purposes. | |
UStruct
(
EStaticConstructor, |
Constructors. | ||
UStruct
(
const FObjectInitializer& ObjectInitializer, |
Destructors
| Type | Name | Description | |
|---|---|---|---|
~UStruct () |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | __DefaultConstructor
(
const FObjectInitializer& X |
||
| UObject * | __VTableCtorCaller
(
FVTableHelper& Helper |
||
| void | AddReferencedObjects
(
UObject* InThis, |
||
| bool | Returns if we have access to property guids | ||
| void | Collects UObjects referenced by bytecode and properties for faster GC access | ||
| void | Collects UObjects referenced by bytecode and properties for this class and its child fields and their children... | ||
| void | CollectBytecodeReferencedObjects
(
TArray< UObject* >& OutReferencedObjects |
Collects UObjects referenced by bytecode | |
| void | CollectPropertyReferencedObjects
(
TArray< UObject* >& OutReferencedObjects |
Collects UObjects referenced by properties | |
| void | |||
| FProperty * | CustomFindProperty
(
const FName InName |
Look up a property by an alternate name if it was not found in the first search, this is overridden for user structs | |
| void | Deletes the UnresolvedScriptProperties array | ||
| void | Destroys all properties owned by this struct | ||
| void | DestroyStruct
(
void* Dest, |
Destroy a struct in memory. | |
| FProperty * | FindPropertyByName
(
FName InName |
Searches property link chain for a property with the specified name | |
| FGuid | FindPropertyGuidFromName
(
const FName InName |
Find property guid | |
| FName | FindPropertyNameFromGuid
(
const FGuid& PropertyGuid |
Returns the property name from the guid | |
| FString | GetAuthoredNameForField
(
const UField* Field |
Returns a human readable string for a given field, overridden for user defined structs | |
| FString | GetAuthoredNameForField
(
const FField* Field |
Returns a human readable string for a given field, overridden for user defined structs | |
| bool | GetBoolMetaDataHierarchical
(
const FName& Key |
Try and find boolean metadata with the given key. | |
| UStruct * | Returns the structure used for inheritance, may be changed by child types | ||
| int32 | Alignment of structure in memory, structure will be at least this large | ||
| const TCHAR * | GetPrefixCPP () |
Returns the struct/ class prefix used for the C++ declaration of this struct/ class. | |
| int32 | Total size of all UProperties, the allocated structure may be larger due to alignment | ||
| const FBlake3Hash & | GetSchemaHash
(
bool bSkipEditorOnly |
Get the Schema Hash for this struct - the hash of its property names and types. | |
| bool | GetStringMetaDataHierarchical
(
const FName& Key, |
Try and find string metadata with the given key. | |
| FTopLevelAssetPath | Returns struct path name as a package + struct FName pair | ||
| int32 | Returns actual allocated size of structure in memory | ||
| UStruct * | Struct this inherits from, may be null | ||
| bool | Returns true if this struct has Asset Registry searchable properties | ||
| const UStruct * | HasMetaDataHierarchical
(
const FName& Key |
Determines if the struct or any of its super structs has any metadata associated with the provided key | |
| void | InitializeStruct
(
void* Dest, |
Initialize a struct over uninitialized memory. | |
| void | InstanceSubobjectTemplates
(
void* Data, |
Creates new copies of components | |
| bool | Returns true if this struct either is SomeBase, or is a child of SomeBase. | ||
| bool | IsChildOf () |
Returns true if this struct either is class T, or is a child of class T. | |
| bool | If true, this class has been cleaned and sanitized (trashed) and should not be used | ||
| void | Creates the field/property links and gets structure ready for use at runtime | ||
| void | LoadTaggedPropertiesFromText
(
FStructuredArchive::FSlot Slot, |
Serializes list of properties to a te, using property tags to handle mismatches | |
| void | PreloadChildren
(
FArchive& Ar |
Preloads all fields that belong to this struct | |
| void | SerializeBin
(
FStructuredArchive::FSlot Slot, |
Serializes struct properties, does not handle defaults. | |
| void | SerializeBin
(
FArchive& Ar, |
Serializes struct properties, does not handle defaults. | |
| void | SerializeBinEx
(
FStructuredArchive::FSlot Slot, |
Serializes the class properties that reside in Data if they differ from the corresponding values in DefaultData | |
| EExprToken | SerializeExpr
(
int32& iCode, |
Serialize an expression to an archive. Returns expression token | |
| void | SerializeProperties
(
FArchive& Ar |
Serializes properties of this struct | |
| void | SerializeTaggedProperties
(
FStructuredArchive::FSlot Slot, |
Serializes list of properties, using property tags to handle mismatches | |
| void | SerializeTaggedProperties
(
FArchive& Ar, |
Serializes list of properties, using property tags to handle mismatches | |
| void | SetPropertiesSize
(
int32 NewSize |
Modifies the property size after it's been recomputed | |
| void | SetSuperStruct
(
UStruct* NewSuperStruct |
Sets the super struct pointer and updates hash information as necessary. | |
| void | SetUnresolvedScriptProperties
(
FUnresolvedScriptPropertiesArray& InUnresolvedProperties |
Sets the UnresolvedScriptProperties array | |
| UClass * | StaticClass () |
Returns a UClass object representing this class at runtime | |
| EClassCastFlags | Returns the static cast flags for this class | ||
| void | StaticLink
(
bool bRelinkExistingProperties |
Static wrapper for Link, using a dummy archive | |
| const TCHAR * | Returns the package this class belongs in | ||
| void |
Overridden from UField
| Type | Name | Description | |
|---|---|---|---|
| void | AddCppProperty
(
FProperty* Property |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | Called to finish destroying the object. | ||
| void | GetPreloadDependencies
(
TArray< UObject* >& OutDeps |
Called during cooking. | |
| void | PostLoad () |
Do any object-specific cleanup required immediately after loading an object. | |
| void | Serialize
(
FStructuredArchive::FRecord Record |
Handles reading, writing, and reference collecting using FArchive. | |
| void | Handles reading, writing, and reference collecting using FArchive. | ||
| void | TagSubobjects
(
EObjectFlags NewFlags |
Tags objects that are part of the same asset with the specified object flag, used for GC checking |
Overridden from UObjectBase
| Type | Name | Description | |
|---|---|---|---|
| void | Force any base classes to be registered first, then call BaseRegister |
Operators
| Type | Name | Description | |
|---|---|---|---|
| void | operator delete
(
void* InMem |
Eliminate V1062 warning from PVS-Studio while keeping MSVC and Clang happy. | |
| void * | operator new
(
const size_t InSize, |
For internal use only; use StaticConstructObject() to create new objects. | |
| void * | operator new
(
const size_t InSize, |
For internal use only; use StaticConstructObject() to create new objects. |
Typedefs
| Name | Description |
|---|---|
| FUnresolvedScriptPropertiesArray | |
| Super | Typedef for the base class (UField) |
| ThisClass | Typedef for UStruct. |
Constants
| Name | Description |
|---|---|
| StaticClassFlags | Bitwise union of EClassFlags pertaining to this class. |