| UObjectBase
|
Module |
|
Header |
/Engine/Plugins/Enterprise/VariantManagerContent/Source/VariantManagerContent/Public/PropertyValueSoftObject.h |
Include |
#include "PropertyValueSoftObject.h" |
[UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType)
class UPropertyValueSoftObject : public UPropertyValue
Stores data from a USoftObjectProperty. It will store it's recorded data as a raw UObject*, and use the usual UPropertyValue facilities for serializing it as a Soft object ptr. This derived class handles converting to and from the property's underlying FSoftObjectPtr to our UObject*. We can't keep a FSoftObjectPtr ourselves, neither as a temp member nor as raw bytes, as it has internal heap-allocated data members like FName and FString.
Name | Description | |
---|---|---|
|
UPropertyValueSoftObject ( |
Name | Description | ||
---|---|---|---|
|
ApplyDataToResolvedObject() |
Applies our recorded data to the PropertyValuePtr for the resolved object. |
|
|
ApplyViaFunctionSetter ( |
Applies the recorded data to the TargetObject via the PropertySetter function (e.g. SetIntensity instead of setting the Intensity UPROPERTY directly) |
|
|
GetDataFromResolvedObject() |
Fetches the value bytes for this property from the resolved object. |
|
|
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 |
|
GetValueSizeInBytes() |
||
|
IsRecordedDataCurrent() |
Returns true if our recorded data would remain the same if we called RecordDataFromResolvedObject right now |
|
|
SetRecordedData |