Navigation
API > API/Plugins > API/Plugins/PropertyBindingUtils
Representation of a property path that can be used for property access and binding.
The engine supports many types of property paths, this implementation has these specific properties:
- Allow to resolve all the indirections from a base value (object or struct) up to the leaf property
- handle redirects from Core Redirect, BP classes, User Defines Structs and Property Bags
You may also take a look at: FCachedPropertyPath, TFieldPath<>, FPropertyPath.
| Name | FPropertyBindingPath |
| Type | struct |
| Header File | /Engine/Plugins/Runtime/PropertyBindingUtils/Source/PropertyBindingUtils/Public/PropertyBindingPath.h |
| Include Path | #include "PropertyBindingPath.h" |
Syntax
USTRUCT ()
struct FPropertyBindingPath
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FPropertyBindingPath
(
const FGuid InStructID, |
PropertyBindingPath.h | ||
FPropertyBindingPath
(
const FGuid InStructID |
PropertyBindingPath.h | ||
| PropertyBindingPath.h | |||
FPropertyBindingPath
(
const FGuid InStructID, |
PropertyBindingPath.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| Segments | TArray< FPropertyBindingPathSegment > | Path segments pointing to a specific property on the path. | PropertyBindingPath.h |
|
| StructID | FGuid | ID of the struct this property path is relative to. | PropertyBindingPath.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddPathSegment
(
const FName InName, |
Adds a path segment to the path. | PropertyBindingPath.h | |
void AddPathSegment
(
const FPropertyBindingPathSegment& PathSegment |
Adds a path segment to the path. | PropertyBindingPath.h | |
bool FromString
(
const FStringView InPath |
Parses path from string. The path should be in format: Foo.Bar[1].Baz | PropertyBindingPath.h | |
TArrayView< FPropertyBindingPathSegment > GetMutableSegments() |
PropertyBindingPath.h | ||
const FPropertyBindingPathSegment & GetSegment
(
const int32 Index |
PropertyBindingPath.h | ||
TConstArrayView< FPropertyBindingPathSegment > GetSegments() |
PropertyBindingPath.h | ||
const FGuid & GetStructID() |
PropertyBindingPath.h | ||
bool HasAnyInstancedIndirection() |
PropertyBindingPath.h | ||
bool Includes
(
const FPropertyBindingPath& Other |
Test if this paths includes the provided path. | PropertyBindingPath.h | |
bool IsPathEmpty() |
PropertyBindingPath.h | ||
int32 NumSegments() |
PropertyBindingPath.h | ||
void Reset() |
Reset the path to empty. | PropertyBindingPath.h | |
bool ResolveIndirections
(
const UStruct* BaseStruct, |
Resolves the property path against base struct type. | PropertyBindingPath.h | |
bool ResolveIndirectionsWithValue
(
const FPropertyBindingDataView BaseValueView, |
Resolves the property path against base value. | PropertyBindingPath.h | |
void SetStructID
(
const FGuid NewStructID |
PropertyBindingPath.h | ||
FString ToString
(
const int32 HighlightedSegment, |
Returns the property path as a one string. Highlight allows to decorate a specific segment. | PropertyBindingPath.h | |
bool UpdateSegments
(
const UStruct* BaseStruct, |
Updates property segments from base struct type. | PropertyBindingPath.h | |
bool UpdateSegmentsFromValue
(
const FPropertyBindingDataView BaseValueView, |
Updates property segments from base value. | PropertyBindingPath.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool operator==
(
const FPropertyBindingPath& RHS |
Test if paths are equal. | PropertyBindingPath.h |