UPropertyValue

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

VariantManagerContent

Header

/Engine/Plugins/Enterprise/VariantManagerContent/Source/VariantManagerContent/Public/PropertyValue.h

Include

#include "PropertyValue.h"

Syntax

UCLASS(BlueprintType)
class UPropertyValue : public UObject

Variables

Name Description

Protected variable UProperty

bool

 

bHasRecordedData

Protected variable UProperty

TArray< FCaptur...

 

CapturedPropSegments

Protected variable

TArray< uint8 >

 

DefaultValue

Protected variable UProperty

uint32

 

DisplayOrder

Protected variable UProperty

FString

 

FullDisplayString

Protected variable

FProperty *

 

LeafProperty

Temp data cached from last resolve.

Protected variable

FFieldClass ...

 

LeafPropertyClass

Protected variable

FOnPropertyAppl...

 

OnPropertyApplied

Protected variable

FOnPropertyReco...

 

OnPropertyRecorded

Protected variable

void *

 

ParentContainerAddress

Protected variable

UStruct *

 

ParentContainerClass

Protected variable

UObject *

 

ParentContainerObject

Protected variable UProperty

EPropertyValueC...

 

PropCategory

Protected variable

UFunction *

 

PropertySetter

Protected variable UProperty

FName

 

PropertySetterName

Protected variable UProperty

TMap< FString, ...

 

PropertySetterParameterDefaults

Protected variable

uint8 *

 

PropertyValuePtr

Protected variable

FName

 

TempName

Protected variable

TSoftObjectPtr<...

 

TempObjPtr

Protected variable

FString

 

TempStr

Protected variable

FText

 

TempText

Protected variable UProperty

TArray< uint8 >

 

ValueBytes

Constructors

Name Description

Public function

UPropertyValue

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function Virtual

void

 

ApplyDataToResolvedObject()

Applies our recorded data to the PropertyValuePtr for the resolved object.

Protected function Virtual

void

 

ApplyViaFunctionSetter

(
    UObject* TargetObject
)

Applies the recorded data to the TargetObject via the PropertySetter function (e.g. SetIntensity instead of setting the Intensity UPROPERTY directly)

Public function

void

 

ClearDefaultValue()

Public function

void

 

ClearLastResolve()

Tries to resolve the property value on the passed object, or the parent binding's bound object if the argument is nullptr.

Public function Virtual Const

bool

 

ContainsProperty

(
    const FProperty* Prop
)

Public function Const

const TArray...

 

GetCapturedPropSegments()

Returns an array of link segments that together describe the full property path.

Public function Virtual Const

TArray< uint...

 

GetDataFromResolvedObject()

Fetches the value bytes for this property from the resolved object.

Public function Virtual

const TArray...

 

GetDefaultValue()

Public function Const

uint32

 

GetDisplayOrder()

Get the order with which the VariantManager should display this in a property list.

Public function

FString

 

GetEnumDocumentationLink()

Public function Const

UEnum *

 

GetEnumPropertyEnum()

Public function Const UFunction BlueprintCallable, Category

const FStrin...

 

GetFullDisplayString()

Public function Const

FString

 

GetLeafDisplayString()

Public function Const

const FName ...

 

GetNamePropertyName()

Utility functions for string properties.

Public function Virtual Const

UClass *

 

GetObjectPropertyObjectClass()

Public function

FOnPropertyA...

 

GetOnPropertyApplied()

Public function

FOnPropertyR...

 

GetOnPropertyRecorded()

Public function Const

UVariantObje...

 

GetParent()

Public function Const

EPropertyVal...

 

GetPropCategory()

Protected function Const

FProperty &#...

 

GetProperty()

Public function Virtual Const

FFieldClass ...

 

GetPropertyClass()

Returns the type of FProperty (FObjectProperty, FFloatProperty, etc) If checking for Enums, prefer checking if GetEnumPropertyEnum() != nullptr, as it may be that we received a FNumericProperty that actually represents an enum, which wouldn't be reflected here

Public function Const

FName

 

GetPropertyName()

Public function Const

int32

 

GetPropertyOffsetInBytes()

Public function Const

void *

 

GetPropertyParentContainerAddress()

Public function Virtual Const

UStruct *...

 

GetPropertyParentContainerClass()

Public function

uint32

 

GetPropertyPathHash()

Combined hash of this property and its indices We don't use GetTypeHash for this because almost always we want to hash UPropertyValues by the pointer instead, for complete uniqueness even with the same propertypath This is mostly just used for grouping UPropertyValues together for editing multiple at once

Public function Const UFunction BlueprintCallable, Category

FText

 

GetPropertyTooltip()

Public function

const TArray...

 

GetRecordedData()

Public function

int32

 

GetRecordedDataAsEnumIndex()

Used RecordedData as an enum value and gets the corresponding index for our Enum.

Public function Const

const FStrin...

 

GetStrPropertyString()

Public function Virtual Const

UScriptStruc...

 

GetStructPropertyStruct()

Public function Const

const FText ...

 

GetTextPropertyText()

Public function

TArray< FNam...

 

GetValidEnumsFromPropertyOverride()

Utility functions for UEnumProperties.

Public function Virtual Const

int32

 

GetValueSizeInBytes()

Public function Const UFunction BlueprintCallable, Category

bool

 

HasRecordedData()

Public function Const

bool

 

HasValidResolve()

Tries to resolve the property value on the passed object, or the parent binding's bound object if the argument is nullptr.

Public function

void

 

Init

(
    const TArray< FCapturedPropSegment ...,
    FFieldClass* InLeafPropertyCla...,
    const FString& InFullDisplayString,
    const FName& InPropertySetterName,
    EPropertyValueCategory InCategory
)

Public function

bool

 

IsNumericPropertyFloatingPoint()

Public function

bool

 

IsNumericPropertySigned()

Public function

bool

 

IsNumericPropertyUnsigned()

Public function Virtual

bool

 

IsRecordedDataCurrent()

Returns true if our recorded data would remain the same if we called RecordDataFromResolvedObject right now

Public function Virtual

void

 

RecordDataFromResolvedObject()

Uses GetDataFromResolvedObject to update our recorded data.

Public function Virtual

bool

 

Resolve

(
    UObject* OnObject
)

Tries to resolve the property value on the passed object, or the parent binding's bound object if the argument is nullptr.

Protected function

bool

 

ResolvePropertiesRecursive

(
    UStruct* ContainerClass,
    void* ContainerAddress,
    int32 PropertyIndex
)

Protected function

bool

 

ResolveUSCSNodeRecursive

(
    const USCS_Node* Node,
    int32 SegmentIndex
)

Recursively navigate the component/USCS_Node hierarchy trying to resolve our property path.

Public function

void

 

SanitizeRecordedEnumData()

Makes sure RecordedData data is a valid Enum index for our Enum (_MAX is not allowed)

Public function

void

 

SetDisplayOrder

(
    uint32 InDisplayOrder
)

Set the order with which the VariantManager should display this in a property list.

Public function Virtual

void

 

SetRecordedData

(
    const uint8* NewDataBytes,
    int32 NumBytes,
    int32 Offset
)

Public function

void

 

SetRecordedDataFromEnumIndex

(
    int32 Index
)

Sets our RecordedData with the value that matches Index, for our Enum.

Protected function

void

 

SetRecordedDataInternal

(
    const uint8* NewDataBytes,
    int32 NumBytes,
    int32 Offset
)

Overridden from UObject

Name Description

Public function Virtual

void

 

Serialize

(
    FArchive& Ar
)

Handles reading, writing, and reference collecting using FArchive.

Deprecated Variables

Name Description

Protected variable UProperty

TObjectPtr< UCl...

 

LeafPropertyClass_DEPRECATED

We use these mainly to know how to serialize/deserialize the values of properties that need special care (e.g. UObjectProperties, name properties, text properties, etc)

Protected variable UProperty

TArray< TFieldP...

 

Properties_DEPRECATED

Properties were previously stored like this.

Protected variable UProperty

TArray< int32 >

 

PropertyIndices_DEPRECATED