Navigation
API > API/Runtime > API/Runtime/CoreUObject
An UnrealScript variable.
| Name | FProperty |
| Type | class |
| Header File | /Engine/Source/Runtime/CoreUObject/Public/UObject/UnrealType.h |
| Include Path | #include "UObject/UnrealType.h" |
Syntax
class FProperty : public FField
Inheritance Hierarchy
- FField → FProperty
Derived Classes
FProperty derived class hierarchy
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| UObject/UnrealType.h | |||
FProperty
(
EInternal InInernal, |
UObject/UnrealType.h | ||
FProperty
(
FFieldVariant InOwner, |
Constructors. | UObject/UnrealType.h | |
FProperty
(
FFieldVariant InOwner, |
Constructor used for constructing compiled-in properties | UObject/UnrealType.h | |
FProperty
(
FFieldVariant InOwner, |
Constructor used for constructing compiled-in properties | UObject/UnrealType.h |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| Super | FField | UObject/UnrealType.h | |
| ThisClass | FProperty | UObject/UnrealType.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ArrayDim | int32 | Persistent variables. | UObject/UnrealType.h | |
| DestructorLinkNext | FProperty * | In memory only: Linked list of properties requiring destruction. | UObject/UnrealType.h | |
| ElementSize | int32 | UObject/UnrealType.h | ||
| FProperty | union FProperty | UObject/UnrealType.h | ||
| FProperty | union FProperty | UObject/UnrealType.h | ||
| IndexInOwner | int32 | Index of the property within its owner, inclusive of base properties. Generated during Link(). | UObject/UnrealType.h | |
| NextRef | FProperty * | In memory only: Linked list of object reference properties from most-derived to base | UObject/UnrealType.h | |
| PostConstructLinkNext | FProperty * | In memory only: Linked list of properties requiring post constructor initialization. | UObject/UnrealType.h | |
| PropertyFlags | EPropertyFlags | UObject/UnrealType.h | ||
| PropertyLinkNext | FProperty * | In memory only: Linked list of properties from most-derived to base | UObject/UnrealType.h | |
| RepIndex | uint16 | UObject/UnrealType.h | ||
| RepNotifyFunc | FName | UObject/UnrealType.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| BlueprintReplicationCondition | TEnumAsByte< ELifetimeCondition > | UObject/UnrealType.h | ||
| FProperty | union FProperty | UObject/UnrealType.h | ||
| Offset_Internal | int32 | In memory variables (generated during Link()). | UObject/UnrealType.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void * AllocateAndInitializeValue() |
Allocates and initializes memory to hold a value this property represents | UObject/UnrealType.h | |
virtual void AppendSchemaHash
(
FBlake3& Builder, |
Updates the given HashBuilder with name and type information of this Property. | UObject/UnrealType.h | |
virtual void CallGetter
(
const void* Container, |
Calls the native getter function for this property | UObject/UnrealType.h | |
virtual void CallSetter
(
void* Container, |
Calls the native setter function for this property | UObject/UnrealType.h | |
virtual bool CanSerializeFromTypeName
(
UE::FPropertyTypeName Type |
Returns true if the type of this property matches the type name. | UObject/UnrealType.h | |
virtual void ClearIntrusiveOptionalValue
(
void* Data |
Set the value to it's special unset state. | UObject/UnrealType.h | |
void ClearPropertyFlags
(
EPropertyFlags NewFlags |
UObject/UnrealType.h | ||
void ClearValue
(
void* Data |
Zeros the value for this property. | UObject/UnrealType.h | |
void ClearValue_InContainer
(
void* Data, |
Zeros the value for this property. | UObject/UnrealType.h | |
ValueType const * ContainerPtrToValuePtr
(
UObject const* ContainerPtr, |
UObject/UnrealType.h | ||
ValueType const * ContainerPtrToValuePtr
(
void const* ContainerPtr, |
UObject/UnrealType.h | ||
ValueType * ContainerPtrToValuePtr
(
void* ContainerPtr, |
UObject/UnrealType.h | ||
ValueType * ContainerPtrToValuePtr
(
UObject* ContainerPtr, |
Get the pointer to property value in a supplied 'container'. | UObject/UnrealType.h | |
const ValueType * ContainerPtrToValuePtrForDefaults
(
const UStruct* ContainerClass, |
UObject/UnrealType.h | ||
ValueType * ContainerPtrToValuePtrForDefaults
(
const UStruct* ContainerClass, |
UObject/UnrealType.h | ||
ValueType * ContainerPtrToValuePtrForDefaults
(
const UStruct* ContainerClass, |
Default variants, these accept and return nullptr, and also check the property against the size of the container. | UObject/UnrealType.h | |
const ValueType * ContainerPtrToValuePtrForDefaults
(
const UStruct* ContainerClass, |
UObject/UnrealType.h | ||
bool ContainsFinishDestroy
(
TArray< const FStructProperty* >& EncounteredStructProps |
Returns true if the property or any of the child properties should be cleared on FinishDestroy. | UObject/UnrealType.h | |
bool ContainsInstancedObjectProperty() |
Returns true if this property, or in the case of e.g. array or struct properties any sub- property, contains a UObject reference that is marked CPF_NeedCtorLink (i.e. instanced keyword). | UObject/UnrealType.h | |
virtual bool ContainsObjectReference
(
TArray< const FStructProperty* >& EncounteredStructProps, |
Returns true if this property, or in the case of e.g. array or struct properties any sub- property, contains a UObject reference. | UObject/UnrealType.h | |
bool ContainsWeakObjectReference() |
Returns true if this property, or in the case of e.g. array or struct properties any sub- property, contains a weak UObject reference. | UObject/UnrealType.h | |
virtual EConvertFromTypeResult ConvertFromType
(
const FPropertyTag& Tag, |
Allows a property to implement backwards compatibility handling for tagged properties | UObject/UnrealType.h | |
void CopyCompleteValue
(
void* Dest, |
Copy the value for all elements of this property. | UObject/UnrealType.h | |
void CopyCompleteValue_InContainer
(
void* Dest, |
UObject/UnrealType.h | ||
virtual void CopyCompleteValueFromScriptVM
(
void* Dest, |
Copy the value for all elements of this property. From the script VM. | UObject/UnrealType.h | |
virtual void CopyCompleteValueFromScriptVM_InContainer
(
void* OutContainer, |
UObject/UnrealType.h | ||
virtual void CopyCompleteValueToScriptVM
(
void* Dest, |
Copy the value for all elements of this property. To the script VM. | UObject/UnrealType.h | |
virtual void CopyCompleteValueToScriptVM_InContainer
(
void* OutValue, |
Equivalent to the above functions, but using the container and aware of getters/setters when the container has them. | UObject/UnrealType.h | |
void CopySingleValue
(
void* Dest, |
Copy the value for a single element of this property. | UObject/UnrealType.h | |
virtual void CopySingleValueFromScriptVM
(
void* Dest, |
Copy the value for a single element of this property. From the script VM. | UObject/UnrealType.h | |
virtual void CopySingleValueToScriptVM
(
void* Dest, |
Copy the value for a single element of this property. To the script VM. | UObject/UnrealType.h | |
void DestroyAndFreeValue
(
void* InMemory |
Destroys and frees memory with a value this property represents | UObject/UnrealType.h | |
void DestroyValue
(
void* Dest |
Destroys the value for this property. | UObject/UnrealType.h | |
void DestroyValue_InContainer
(
void* Dest |
Destroys the value for this property. | UObject/UnrealType.h | |
virtual void EmitIntrusiveOptionalReferenceInfo
(
UE::GC::FSchemaBuilder& Schema, |
For properties returning true from HasIntrusiveUnsetOptionalState which also contain object references, emit information for the garbage collector to safely gather the references from the value whether the optional value is set or unset. | UObject/UnrealType.h | |
virtual void EmitReferenceInfo
(
UE::GC::FSchemaBuilder& Schema, |
Emits tokens used by realtime garbage collection code to passed in ReferenceTokenStream. | UObject/UnrealType.h | |
| UObject/UnrealType.h | |||
| UObject/UnrealType.h | |||
| UObject/UnrealType.h | |||
| UObject/UnrealType.h | |||
void FinishDestroy
(
void* Data |
Applies appropriate finish destroy actions for the property if needed. | UObject/UnrealType.h | |
void FinishDestroy_InContainer
(
void* Data |
Applies appropriate finish destroy actions for the property if needed. | UObject/UnrealType.h | |
ELifetimeCondition GetBlueprintReplicationCondition() |
UObject/UnrealType.h | ||
| UObject/UnrealType.h | |||
| Returns the text to use for exporting this property to header file. | UObject/UnrealType.h | ||
int32 GetElementSize() |
UObject/UnrealType.h | ||
virtual FName GetID() |
UObject/UnrealType.h | ||
int32 GetIndexInOwner () |
Return the index of the property in its owner. | UObject/UnrealType.h | |
virtual int32 GetMinAlignment() |
UObject/UnrealType.h | ||
FString GetNameCPP() |
Returns the C++ name of the property, including the _DEPRECATED suffix if the property is deprecated. | UObject/UnrealType.h | |
int32 GetOffset_ForDebug() |
Return offset of property from container base. | UObject/UnrealType.h | |
int32 GetOffset_ForGC() |
Return offset of property from container base. | UObject/UnrealType.h | |
int32 GetOffset_ForInternal() |
Return offset of property from container base. | UObject/UnrealType.h | |
int32 GetOffset_ForUFunction() |
Return offset of property from container base. | UObject/UnrealType.h | |
int32 GetOffset_ReplaceWith_ContainerPtrToValuePtr() |
Return offset of property from container base. | UObject/UnrealType.h | |
const FProperty * GetOwnerProperty () |
UObject/UnrealType.h | ||
| Returns the first FProperty in this property's Outer chain that does not have a FProperty for an Outer | UObject/UnrealType.h | ||
EPropertyFlags GetPropertyFlags() |
Returns this property's propertyflags | UObject/UnrealType.h | |
FProperty * GetRepOwner () |
Returns the replication owner, which is the property itself, or NULL if this isn't important for replication. | UObject/UnrealType.h | |
void GetSingleValue_InContainer
(
const void* InContainer, |
Copies a single value to OutValue even if the property represents a static array of values | UObject/UnrealType.h | |
int32 GetSize () |
@TODO: Surely this can have an int32 overflow. | UObject/UnrealType.h | |
UPropertyWrapper * GetUPropertyWrapper() |
Gets the wrapper object for this property or creates one if it doesn't exist yet | UObject/UnrealType.h | |
void GetValue_InContainer
(
void const* InContainer, |
UObject/UnrealType.h | ||
virtual void * GetValueAddressAtIndex_Direct
(
const FProperty* Inner, |
Gets value address at given index inside of a static array or container | UObject/UnrealType.h | |
uint32 GetValueTypeHash
(
const void* Src |
Returns the hash value for an element of this property. | UObject/UnrealType.h | |
bool HasAllPropertyFlags
(
uint64 FlagsToCheck |
Used to safely check whether all of the passed in flags are set. | UObject/UnrealType.h | |
bool HasAnyPropertyFlags
(
uint64 FlagsToCheck |
Used to safely check whether any of the passed in flags are set. | UObject/UnrealType.h | |
virtual bool HasGetter() |
Checks if this property as a native getter function | UObject/UnrealType.h | |
virtual bool HasIntrusiveUnsetOptionalState () |
Returns whether this type has a special state for an unset TOptional meaning the size TOptional |
UObject/UnrealType.h | |
virtual bool HasSetter() |
Checks if this property as a native setter function | UObject/UnrealType.h | |
virtual bool HasSetterOrGetter() |
Checks if this property as a native setter or getter function | UObject/UnrealType.h | |
virtual bool Identical
(
const void* A, |
Determines whether the property values are identical. | UObject/UnrealType.h | |
bool Identical_InContainer
(
const void* A, |
Determines whether the property values are identical. | UObject/UnrealType.h | |
const TCHAR * ImportText_Direct
(
const TCHAR* Buffer, |
Import a text value | UObject/UnrealType.h | |
const TCHAR * ImportText_InContainer
(
const TCHAR* Buffer, |
Import a text value | UObject/UnrealType.h | |
virtual void InitializeIntrusiveUnsetOptionalValue
(
void* Data |
Initialize the value at the given address to an unset TOptional using an intrusive state rather than a trailing boolean. | UObject/UnrealType.h | |
void InitializeMetaData() |
Move metadata from static memory into metadata object on package | UObject/UnrealType.h | |
void InitializeValue
(
void* Dest |
Zeros, copies from the default, or calls the constructor for on the value for this property. | UObject/UnrealType.h | |
void InitializeValue_InContainer
(
void* Dest |
Zeros, copies from the default, or calls the constructor for on the value for this property. | UObject/UnrealType.h | |
virtual void InstanceSubobjects
(
void* Data, |
Creates new copies of components | UObject/UnrealType.h | |
bool IsEditorOnlyProperty () |
Editor-only properties are those that only are used with the editor is present or cannot be removed from serialisation. | UObject/UnrealType.h | |
bool IsInContainer
(
const UStruct* ContainerClass |
See if the offset of this property is below the supplied container size | UObject/UnrealType.h | |
bool IsInContainer
(
int32 ContainerSize |
See if the offset of this property is below the supplied container size | UObject/UnrealType.h | |
virtual bool IsIntrusiveOptionalValueSet
(
const void* Data |
Returns whether an optional value of this inner type is unset. | UObject/UnrealType.h | |
int32 Link
(
FArchive& Ar |
UObject/UnrealType.h | ||
void LinkWithoutChangingOffset
(
FArchive& Ar |
UObject/UnrealType.h | ||
virtual bool LoadTypeName
(
UE::FPropertyTypeName Type, |
Restores this property and its owned properties from the type name. | UObject/UnrealType.h | |
virtual bool NetSerializeItem
(
FArchive& Ar, |
UObject/UnrealType.h | ||
void PerformOperationWithGetter
(
void* OutContainer, |
Helper function for getting container / struct property value and performing operation directly on the value memory | UObject/UnrealType.h | |
void PerformOperationWithSetter
(
void* OutContainer, |
Helper function for setting container / struct property value and performing operation directly on the value memory | UObject/UnrealType.h | |
virtual void * ResolveVisitedPathInfo
(
void* Data, |
Attempt to resolve the given inner path info against this outer property to get the inner property value. | UObject/UnrealType.h | |
virtual bool SameType
(
const FProperty* Other |
Returns true, if Other is property of exactly the same type | UObject/UnrealType.h | |
virtual void SaveTypeName
(
UE::FPropertyTypeNameBuilder& Type |
Saves the type name of this property and its owned properties. | UObject/UnrealType.h | |
void SerializeBinProperty
(
FStructuredArchive::FSlot Slot, |
Serializes the property with the struct's data residing in Data. | UObject/UnrealType.h | |
virtual void SerializeItem
(
FStructuredArchive::FSlot Slot, |
UObject/UnrealType.h | ||
void SerializeNonMatchingBinProperty
(
FStructuredArchive::FSlot Slot, |
Serializes the property with the struct's data residing in Data, unless it matches the default | UObject/UnrealType.h | |
void SetBlueprintReplicationCondition
(
ELifetimeCondition InBlueprintReplicationCondition |
UObject/UnrealType.h | ||
void SetElementSize
(
int32 NewSize |
ElementSize accessors to facilitate underlying type change. | UObject/UnrealType.h | |
void SetIndexInOwner
(
int32 Index |
Set the index of the property in its owner. Set by the owner in UStruct::Link(). | UObject/UnrealType.h | |
void SetPropertyFlags
(
EPropertyFlags NewFlags |
UObject/UnrealType.h | ||
void SetSingleValue_InContainer
(
void* OutContainer, |
Copies a single value to the property even if the property represents a static array of values | UObject/UnrealType.h | |
void SetValue_InContainer
(
void* OutContainer, |
UObject/UnrealType.h | ||
bool ShouldDuplicateValue() |
Determines whether this property value is eligible for copying when duplicating an object | UObject/UnrealType.h | |
bool ShouldPort
(
uint32 PortFlags |
UObject/UnrealType.h | ||
bool ShouldSerializeValue
(
FArchive& Ar |
UObject/UnrealType.h | ||
virtual bool SupportsNetSharedSerialization() |
UObject/UnrealType.h | ||
virtual bool UseBinaryOrNativeSerialization
(
const FArchive& Ar |
UObject/UnrealType.h | ||
bool ValidateImportFlags
(
uint32 PortFlags, |
Verify that modifying this property's value via ImportText is allowed. | UObject/UnrealType.h | |
EPropertyVisitorControlFlow Visit
(
const FPropertyVisitorData& Data, |
UObject/UnrealType.h | ||
EPropertyVisitorControlFlow Visit
(
const FPropertyVisitorData& Data, |
Visits this property and allows recursion into the inner properties This method allows callers to visit inner properties without knowing about its container type as opposed to TPropertyIterator. | UObject/UnrealType.h | |
virtual EPropertyVisitorControlFlow Visit
(
FPropertyVisitorContext& Context, |
Visits this property and allows recursion into the inner properties This method allows callers to visit inner properties without knowing about its container type as opposed to TPropertyIterator. | UObject/UnrealType.h |
Overridden from FField
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual SIZE_T GetFieldSize() |
UObject/UnrealType.h | ||
virtual void PostDuplicate
(
const FField& InField |
Fixups after duplicating a Field | UObject/UnrealType.h | |
virtual void Serialize
(
FArchive& Ar |
Begin UObject interface: the following functions mimic UObject interface for easier transition from UProperties to FProperties. | UObject/UnrealType.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void ClearValueInternal
(
void* Data |
UObject/UnrealType.h | ||
virtual bool ContainsClearOnFinishDestroyInternal
(
TArray< const FStructProperty* >& EncounteredStructProps |
UObject/UnrealType.h | ||
virtual void CopyValuesInternal
(
void* Dest, |
UObject/UnrealType.h | ||
virtual void DestroyValueInternal
(
void* Dest |
UObject/UnrealType.h | ||
virtual void ExportText_Internal
(
FString& ValueStr, |
UObject/UnrealType.h | ||
virtual void FinishDestroyInternal
(
void* Data |
UObject/UnrealType.h | ||
virtual uint32 GetValueTypeHashInternal
(
const void* Src |
UObject/UnrealType.h | ||
virtual const TCHAR * ImportText_Internal
(
const TCHAR* Buffer, |
UObject/UnrealType.h | ||
void Init() |
Initializes internal state. | UObject/UnrealType.h | |
virtual void InitializeValueInternal
(
void* Dest |
UObject/UnrealType.h | ||
virtual void LinkInternal
(
FArchive& Ar |
UObject/UnrealType.h | ||
void * PointerToValuePtr
(
void const* ContainerOrPropertyPtr, |
UObject/UnrealType.h | ||
void SetOffset_Internal
(
int32 NewOffset |
Set the alignment offset for this property - added for FMapProperty | UObject/UnrealType.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static UE_API FField * Construct
(
const FFieldVariant& InOwner, |
UObject/UnrealType.h | ||
| Gets a redirected property name, will return NAME_None if no redirection was found | UObject/UnrealType.h | ||
static const TCHAR * ImportSingleProperty
(
const TCHAR* Str, |
Parses and imports a text definition of a single property's value (if array, may be an individual element) also includes parsing of special operations for array properties (Add/Remove/RemoveIndex/Empty) | UObject/UnrealType.h | |
static UE_API FFieldClass * StaticClass() |
UObject/UnrealType.h | ||
static EClassCastFlags StaticClassCastFlags() |
UObject/UnrealType.h | ||
static EClassCastFlags StaticClassCastFlagsPrivate() |
UObject/UnrealType.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void operator delete
(
void* InMem |
UObject/UnrealType.h | ||
void * operator new
(
const size_t InSize |
UObject/UnrealType.h | ||
void * operator new
(
const size_t InSize, |
UObject/UnrealType.h | ||
| UObject/UnrealType.h | |||
| UObject/UnrealType.h |