UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
AnimSubsystem_Tag.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "AnimSubsystem.h"
6#include "AnimSubsystem_Tag.generated.h"
7
8struct FAnimNode_Base;
9class UAnimInstance;
10
12USTRUCT()
14{
16
17public:
23 ENGINE_API int32 FindNodeIndexByTag(FName InTag) const;
24
31 template<typename NodeType>
33 {
34 return static_cast<NodeType*>(FindNodeByTag_Internal(InTag, InInstance, NodeType::StaticStruct()));
35 }
36
43 template<typename NodeType>
44 const NodeType* FindNodeByTag(FName InTag, const UAnimInstance* InInstance) const
45 {
46 return static_cast<const NodeType*>(FindNodeByTag_Internal(InTag, const_cast<UAnimInstance*>(InInstance), NodeType::StaticStruct()));
47 }
48
49private:
50 // FAnimSubsystem interface
51 ENGINE_API virtual void OnPostLoadDefaults(FAnimSubsystemPostLoadDefaultsContext& InContext) override;
52
53 // Internal impl for FindNodeByTag
55
56private:
57 friend class UAnimBlueprintExtension_Tag;
58
59 // Map of name->node index
60 UPROPERTY()
61 TMap<FName, int32> NodeIndices;
62
63 // Anim class that contains this subsystem
64 IAnimClassInterface* AnimClass = nullptr;
65};
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define USTRUCT(...)
Definition ObjectMacros.h:746
Definition NameTypes.h:617
Definition AnimClassInterface.h:193
Definition UnrealString.h.inl:34
Definition AnimInstance.h:353
Definition Class.h:1720
Definition AnimNodeBase.h:853
Definition AnimSubsystem.h:77
Definition AnimSubsystem_Tag.h:14
const NodeType * FindNodeByTag(FName InTag, const UAnimInstance *InInstance) const
Definition AnimSubsystem_Tag.h:44
NodeType * FindNodeByTag(FName InTag, UAnimInstance *InInstance) const
Definition AnimSubsystem_Tag.h:32
Definition AnimSubsystem.h:101