7#include "AnimNodeReference.generated.h"
37 template<
typename NodeType>
40 if(AnimNode && AnimNodeStruct && AnimNodeStruct->IsChildOf(NodeType::StaticStruct()))
42 return static_cast<NodeType*
>(AnimNode);
49 template<
typename NodeType>
52 check(AnimNodeStruct);
54 check(AnimNodeStruct->IsChildOf(NodeType::StaticStruct()));
55 return *
static_cast<NodeType*
>(AnimNode);
59 template<
typename NodeType>
73 template<
typename OtherContextType>
78 if(
InReference.AnimNodeStruct &&
InReference.AnimNodeStruct->IsChildOf(OtherContextType::FInternalNodeType::StaticStruct()))
EAnimNodeReferenceConversionResult
Definition AnimNodeReference.h:16
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_LOG(CategoryName, Verbosity, Format,...)
Definition LogMacros.h:270
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UENUM(...)
Definition ObjectMacros.h:749
#define USTRUCT(...)
Definition ObjectMacros.h:746
Definition AnimClassInterface.h:193
Definition AssetRegistryState.h:50
Definition AnimInstance.h:353
Definition AnimNodeReference.h:24
void CallAnimNodeFunction(const TCHAR *InFunctionNameForErrorReporting, TFunctionRef< void(NodeType &)> InFunction) const
Definition AnimNodeReference.h:60
FAnimNodeReference()=default
NodeType & GetAnimNode() const
Definition AnimNodeReference.h:50
NodeType * GetAnimNodePtr() const
Definition AnimNodeReference.h:38
FAnimNode_Base FInternalNodeType
Definition AnimNodeReference.h:28
static OtherContextType ConvertToType(const FAnimNodeReference &InReference, EAnimNodeReferenceConversionResult &OutResult)
Definition AnimNodeReference.h:74
Definition AnimNodeBase.h:853
Definition UnrealTypeTraits.h:40