Navigation
API > API/Plugins > API/Plugins/AnimNextAnimGraph
To keep the node instance cost as low as possible, data such as pointers to the shared data are not stored per node and are instead fetched on demand. In order to be able to query for interfaces on a trait stack from a trait pointer, a trait stack binding must first be created.
| Name | FTraitStackBinding |
| Type | struct |
| Header File | /Engine/Plugins/Experimental/AnimNextAnimGraph/Source/AnimNextAnimGraph/Public/TraitCore/TraitStackBinding.h |
| Include Path | #include "TraitCore/TraitStackBinding.h" |
Syntax
struct FTraitStackBinding
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FTraitStackBinding
(
const FExecutionContext& InContext, |
Creates a trait stack binding with the stack that owns the specified trait pointer. | TraitCore/TraitStackBinding.h | |
| Creates an empty/invalid binding. | TraitCore/TraitStackBinding.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| BaseTraitIndex | uint32 | The base trait index of the bound trait stack on the node A node can contain multiple independent trait stacks by having multiple base traits | TraitCore/TraitStackBinding.h | |
| Context | const FExecutionContext * | A pointer to the execution context that created the binding. | TraitCore/TraitStackBinding.h | |
| FExecutionContext | friend | TraitCore/TraitStackBinding.h | ||
| FTraitBinding | friend | TraitCore/TraitStackBinding.h | ||
| NodeDescription | const FNodeDescription * | A pointer to the node shared data we are bound to. | TraitCore/TraitStackBinding.h | |
| NodeInstance | FNodeInstance * | A pointer to the node instance data we are bound to. | TraitCore/TraitStackBinding.h | |
| NodeTemplate | const FNodeTemplate * | A pointer to the node template used by the node we are bound to. | TraitCore/TraitStackBinding.h | |
| TopTraitIndex | uint32 | The top trait index of the bound trait stack on the node. | TraitCore/TraitStackBinding.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool GetBaseTrait
(
FTraitBinding& OutBinding |
Returns a trait binding to the base of the stack. Returns true on success, false otherwise. | TraitCore/TraitStackBinding.h | |
FWeakTraitPtr GetBaseTraitPtr() |
Returns a trait pointer to the base of the trait stack. | TraitCore/TraitStackBinding.h | |
bool GetChildTrait
(
const FTraitBinding& ParentBinding, |
Returns a trait binding to the trait above the specified one (its child). | TraitCore/TraitStackBinding.h | |
bool GetInterface
(
TTraitBinding< TraitInterface >& OutBinding |
The search begins at the top of the stack. Returns true on success, false otherwise. | TraitCore/TraitStackBinding.h | |
bool GetInterfaceSuper
(
const FTraitBinding& Binding, |
Returns true on success, false otherwise. | TraitCore/TraitStackBinding.h | |
uint32 GetNumTraits() |
Returns the number of traits on this stack. | TraitCore/TraitStackBinding.h | |
bool GetParentTrait
(
const FTraitBinding& ChildBinding, |
Returns a trait binding to the trait below the specified one (its parent). | TraitCore/TraitStackBinding.h | |
bool GetTopTrait
(
FTraitBinding& OutBinding |
Returns a trait binding to the top of the stack. Returns true on success, false otherwise. | TraitCore/TraitStackBinding.h | |
bool GetTrait
(
uint32 TraitIndex, |
Returns a trait binding to the trait at the specified index (relative to the start of the stack). | TraitCore/TraitStackBinding.h | |
bool HasInterface() |
The search begins at the top of the stack. Returns true on success, false otherwise. | TraitCore/TraitStackBinding.h | |
bool HasInterfaceSuper
(
const FTraitBinding& Binding |
Returns true on success, false otherwise. | TraitCore/TraitStackBinding.h | |
bool IsValid() |
Returns whether or not this binding is valid. | TraitCore/TraitStackBinding.h | |
void Reset() |
Resets the stack binding to an invalid state. | TraitCore/TraitStackBinding.h | |
void SnapshotLatentProperties
(
bool bIsFrozen |
Takes a snapshot of all latent properties on this trait stack. | TraitCore/TraitStackBinding.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool operator!=
(
const FTraitStackBinding& Other |
TraitCore/TraitStackBinding.h | ||
bool operator==
(
const FTraitStackBinding& Other |
Equality testing. | TraitCore/TraitStackBinding.h |