UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FPropertyBagSetRef Class Reference

#include <PropertyBag.h>

+ Inheritance diagram for FPropertyBagSetRef:

Public Member Functions

 FPropertyBagSetRef (const FPropertyBagPropertyDesc &InDesc, const void *InSet)
 
UE_API EPropertyBagResult AddValueBool (const bool bInValue)
 
UE_API EPropertyBagResult AddValueByte (const uint8 InValue)
 
UE_API EPropertyBagResult AddValueInt32 (const int32 InValue)
 
UE_API EPropertyBagResult AddValueUInt32 (const uint32 InValue)
 
UE_API EPropertyBagResult AddValueInt64 (const int64 InValue)
 
UE_API EPropertyBagResult AddValueUInt64 (const uint64 InValue)
 
UE_API EPropertyBagResult AddValueFloat (const float InValue)
 
UE_API EPropertyBagResult AddValueDouble (const double InValue)
 
UE_API EPropertyBagResult AddValueName (const FName InValue)
 
UE_API EPropertyBagResult AddValueString (const FString &InValue)
 
UE_API EPropertyBagResult AddValueText (const FText &InValue)
 
UE_API EPropertyBagResult AddValueEnum (const int64 InValue, const UEnum *Enum)
 
UE_API EPropertyBagResult AddValueStruct (FConstStructView InValue)
 
UE_API EPropertyBagResult AddValueObject (UObject *InValue)
 
UE_API EPropertyBagResult AddValueClass (UClass *InValue)
 
UE_API EPropertyBagResult AddValueSoftPath (const FSoftObjectPath &InValue)
 
template<typename T >
EPropertyBagResult AddValueEnum (const T InValue)
 
template<typename T >
EPropertyBagResult AddValueStruct (const T &InValue)
 
template<typename T >
EPropertyBagResult AddValueObject (T *InValue)
 
template<typename T >
EPropertyBagResult Remove (const T &Value)
 
template<typename T >
TValueOrError< bool, EPropertyBagResultContains (const T &Value) const
 
UE_FORCEINLINE_HINT int32 Num () const
 

Detailed Description

A reference to a set in FInstancedPropertyBag Contains helper methods to get and set properties.

FInstancedPropertyBag Bag;
Bag.AddProperties({
    { SetName, EPropertyBagContainerType::Set, EPropertyBagPropertyType::Float }
});

if (auto FloatSetRes = Bag.GetSetRef(ArrayName); FloatSetRes.IsValid())
{
    FPropertyBagSetRef& FloatSet = FloatSetRes.GetValue();
    FloatSet.AddValueFloat(123.f);
}

Note: The set reference is not valid after the layout of the referenced property bag has changed!

Constructor & Destructor Documentation

◆ FPropertyBagSetRef()

FPropertyBagSetRef::FPropertyBagSetRef ( const FPropertyBagPropertyDesc InDesc,
const void InSet 
)
inline

Member Function Documentation

◆ AddValueBool()

EPropertyBagResult FPropertyBagSetRef::AddValueBool ( const bool  bInValue)

Add value to set. If value is already present, it will not be added

◆ AddValueByte()

EPropertyBagResult FPropertyBagSetRef::AddValueByte ( const uint8  InValue)

◆ AddValueClass()

EPropertyBagResult FPropertyBagSetRef::AddValueClass ( UClass InValue)

◆ AddValueDouble()

EPropertyBagResult FPropertyBagSetRef::AddValueDouble ( const double  InValue)

◆ AddValueEnum() [1/2]

EPropertyBagResult FPropertyBagSetRef::AddValueEnum ( const int64  InValue,
const UEnum Enum 
)

◆ AddValueEnum() [2/2]

template<typename T >
EPropertyBagResult FPropertyBagSetRef::AddValueEnum ( const T  InValue)
inline

Adds enum value specified type.

◆ AddValueFloat()

EPropertyBagResult FPropertyBagSetRef::AddValueFloat ( const float  InValue)

◆ AddValueInt32()

EPropertyBagResult FPropertyBagSetRef::AddValueInt32 ( const int32  InValue)

◆ AddValueInt64()

EPropertyBagResult FPropertyBagSetRef::AddValueInt64 ( const int64  InValue)

◆ AddValueName()

EPropertyBagResult FPropertyBagSetRef::AddValueName ( const FName  InValue)

◆ AddValueObject() [1/2]

template<typename T >
EPropertyBagResult FPropertyBagSetRef::AddValueObject ( T *  InValue)
inline

Adds object pointer value specified type.

◆ AddValueObject() [2/2]

EPropertyBagResult FPropertyBagSetRef::AddValueObject ( UObject InValue)

◆ AddValueSoftPath()

EPropertyBagResult FPropertyBagSetRef::AddValueSoftPath ( const FSoftObjectPath InValue)

◆ AddValueString()

EPropertyBagResult FPropertyBagSetRef::AddValueString ( const FString &  InValue)

◆ AddValueStruct() [1/2]

template<typename T >
EPropertyBagResult FPropertyBagSetRef::AddValueStruct ( const T &  InValue)
inline

Adds struct value specified type.

◆ AddValueStruct() [2/2]

EPropertyBagResult FPropertyBagSetRef::AddValueStruct ( FConstStructView  InValue)

◆ AddValueText()

EPropertyBagResult FPropertyBagSetRef::AddValueText ( const FText InValue)

◆ AddValueUInt32()

EPropertyBagResult FPropertyBagSetRef::AddValueUInt32 ( const uint32  InValue)

◆ AddValueUInt64()

EPropertyBagResult FPropertyBagSetRef::AddValueUInt64 ( const uint64  InValue)

◆ Contains()

template<typename T >
TValueOrError< bool, EPropertyBagResult > FPropertyBagSetRef::Contains ( const T &  Value) const
inline

Returns a bool specifying if the element was found or not

◆ Num()

UE_FORCEINLINE_HINT int32 FPropertyBagSetRef::Num ( ) const
inline

Returns number of elements in set.

◆ Remove()

template<typename T >
EPropertyBagResult FPropertyBagSetRef::Remove ( const T &  Value)
inline

Removes value from set if found.


The documentation for this class was generated from the following files: