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. |