Navigation
API > API/Plugins > API/Plugins/AnimNext > API/Plugins/AnimNext/TraitCore
Inheritance Hierarchy
- FTraitBinding
- TTraitBinding< IBlendStack >
- TTraitBinding< IContinuousBlend >
- TTraitBinding< IDiscreteBlend >
- TTraitBinding< IEvaluate >
- TTraitBinding< IGarbageCollection >
- TTraitBinding< IGroupSynchronization >
- TTraitBinding< IHierarchy >
- TTraitBinding< IInertializerBlend >
- TTraitBinding< ISmoothBlend >
- TTraitBinding< ITimeline >
- TTraitBinding< IUpdate >
- TTraitBinding< IUpdateTraversal >
References
| Module | AnimNext |
| Header | /Engine/Plugins/Experimental/AnimNext/Source/AnimNext/Public/TraitCore/TraitBinding.h |
| Include | #include "TraitCore/TraitBinding.h" |
Syntax
struct FTraitBinding
Remarks
Base class for all trait bindings. A trait binding contains untyped data about a specific trait instance.
Variables
| Type | Name | Description | |
|---|---|---|---|
| friend | FExecutionContext | ||
| friend | FTraitStackBinding | ||
| int32 | InterfaceThisOffset | The offset of the typed interface we are bound to or -1 if we are untyped The offset is relative to the trait implementation pointer | |
| const FTraitStackBinding * | Stack | A pointer to the bound trait stack or nullptr if we are not bound. | |
| const FTrait * | TraitImpl | A pointer to the trait implementation from which interfaces are found Can be null if the trait is present at runtime but the trait implementation hasn't been registered/found | |
| uint32 | TraitIndex | The index of the trait on the bound stack relative to the base of the stack (not relative to the base of the node) |
Constructors
| Type | Name | Description | |
|---|---|---|---|
| Creates an empty/invalid binding. | |||
FTraitBinding
(
const FTraitStackBinding* InStack, |
Functions
| Type | Name | Description | |
|---|---|---|---|
| bool | AsInterface
(
TTraitBinding< TraitInterface >& OutBinding |
If no such interface is found, false it returned. | |
| bool | AsInterfaceImpl
(
FTraitInterfaceUID InterfaceUID, |
||
| InstanceDataType * | Queries a node for a pointer to its trait instance data. | ||
| const TraitInterfaceType * | Performs a naked cast to the desired interface type. | ||
| FTraitInterfaceUID | Returns the trait interface UID when bound, an invalid UID otherwise. | ||
| const PropertyType * | GetLatentProperty
(
FLatentPropertyHandle Handle |
Returns a pointer to the latent property specified by the provided handle or nullptr if the binding/handle are invalid. | |
| const FLatentPropertyHandle * | Queries a node for a pointer to its trait latent properties. | ||
| const SharedDataType * | Queries a node for a pointer to its trait shared data. | ||
| const FTraitStackBinding * | GetStack () |
Returns the trait stack binding backing this trait binding. | |
| bool | GetStackInterface
(
TTraitBinding< TraitInterface >& OutBinding |
If no such trait exists, false is returned. | |
| bool | GetStackInterfaceSuper
(
TTraitBinding< TraitInterface >& OutSuperBinding |
If no such trait exists, false is returned. | |
| const FTrait * | GetTrait () |
Returns a pointer to the trait implementation if valid and if the trait is present at runtime. | |
| uint32 | Returns the trait index on the stack we are bound to. | ||
| FWeakTraitPtr | GetTraitPtr () |
Returns the trait pointer we are bound to. | |
| bool | IsValid () |
Returns whether or not this binding is valid. | |
| void | Reset () |
Resets the trait binding to an invalid state. |
Operators
| Type | Name | Description | |
|---|---|---|---|
| bool | operator!=
(
const FTraitBinding& RHS |
||
| bool | operator==
(
const FTraitBinding& RHS |
Equality and inequality tests. |