Navigation
API > API/Plugins > API/Plugins/UAF
Our baked abstract skeleton binding data This class is ref counted and all named/typed sets increment/decrement its ref count
| Name | FAttributeBindingData |
| Type | class |
| Header File | /Engine/Plugins/Experimental/UAF/UAF/Source/UAF/Public/UAF/Attributes/AttributeBindingData.h |
| Include Path | #include "UAF/Attributes/AttributeBindingData.h" |
Syntax
class FAttributeBindingData : public UE::Private::FQueryableRefCountedObject
Inheritance Hierarchy
- TAtomicRefCount → FQueryableRefCountedObject → FAttributeBindingData
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| UAF/Attributes/AttributeBindingData.h | |||
FAttributeBindingData
(
const FAttributeBindingData& |
UAF/Attributes/AttributeBindingData.h | ||
FAttributeBindingData
(
TNonNullPtr< const UAbstractSkeletonSetBinding > Binding, |
UAF/Attributes/AttributeBindingData.h |
Classes
| Name | Remarks |
|---|---|
| FNamedSetIterator |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| NamedSetMapType | TSortedMap< FName, FAttributeNamedSet *, FDefaultAllocator, FNameFastLess > | UAF/Attributes/AttributeBindingData.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AttributeNamesByType | TMap< UScriptStruct *, TArray< FName > > | A map of attribute type to a map of their name to their attribute binding index Bone attribute names aren't sorted, they are in the same order as in the skeleton All other attribute names are sorted by FName | UAF/Attributes/AttributeBindingData.h | |
| BindingAsset | TWeakObjectPtr< const UAbstractSkeletonSetBinding > | The source binding asset used to create this binding data. | UAF/Attributes/AttributeBindingData.h | |
| DefaultAttributeValuesByName | TMap< FName, FPoseValueBundlePtr > | Default attribute values for each named set. | UAF/Attributes/AttributeBindingData.h | |
| NamedSetMap | NamedSetMapType | A map of set names to its named set data (at LOD 0) | UAF/Attributes/AttributeBindingData.h | |
| NamedSets | TArray< FAttributeNamedSet > | TODO: We should allocate the binding data, named sets, and typed sets data contiguously in a single buffer that is owned by the binding data to avoid wasted padding, multiple allocations, and reduce TLB pressure A named set entry per LOD (NumSets * NumLODs) Using the LOD index within the named set, we can quickly navigate to other LODs using a pointer offset | UAF/Attributes/AttributeBindingData.h | |
| NumInternalReferences | uint32 | The number of internal references for the purposes of reference counting. | UAF/Attributes/AttributeBindingData.h | |
| SkeletonToMeshIndicesMap | TMap< FSkeletonPoseBoneIndex, FMeshPoseBoneIndex > | Only filled when executing with a skeletal mesh. | UAF/Attributes/AttributeBindingData.h | |
| TypedSets | TArray< FAttributeTypedSet > | A typed set entry per type and LOD for each named set (NumSets * NumTypes * NumLODs) Using the LOD index within the outer named set, we can quickly navigate to other LODs using a pointer offset | UAF/Attributes/AttributeBindingData.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FNamedSetIterator CreateNamedSetIterator() |
Returns an iterator over all named sets contained within. | UAF/Attributes/AttributeBindingData.h | |
FAttributeBindingIndex FindBindingIndex
(
FName AttributeName, |
Returns the attribute binding index for the specified attribute, O(N) Returns an invalid index if the attribute isn't found | UAF/Attributes/AttributeBindingData.h | |
FAttributeNamedSetPtr FindNamedSet
(
FName SetName |
Returns the named set with the specified name, O(logN) Returns null if no set with that name is found | UAF/Attributes/AttributeBindingData.h | |
FPoseValueBundlePtr GetDefaultAttributeValues
(
FName SetName |
Returns a collection of the default attribute values for the specified named set. | UAF/Attributes/AttributeBindingData.h | |
bool IsEmpty() |
Returns whether or not this binding is empty, O(1) | UAF/Attributes/AttributeBindingData.h | |
int32 NumAttributes
(
UScriptStruct* AttributeType |
Returns the number of attributes of the specified type, O(1) Note that some attributes might not be part of any named/typed sets | UAF/Attributes/AttributeBindingData.h | |
int32 NumLODs() |
Returns the number of LODs, O(1) | UAF/Attributes/AttributeBindingData.h | |
int32 NumNamedSets() |
Returns the number of named sets, O(1) | UAF/Attributes/AttributeBindingData.h | |
uint32 Release() |
UE::Private::FQueryableRefCountedObject API. | UAF/Attributes/AttributeBindingData.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FAttributeBindingData & operator=
(
const FAttributeBindingData& |
UAF/Attributes/AttributeBindingData.h | ||
| UAF/Attributes/AttributeBindingData.h |