UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CurveIdentifier.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreTypes.h"
10
11#include "CurveIdentifier.generated.h"
12
14UENUM(BlueprintType)
22
24UENUM(BlueprintType)
26{
27 X,
28 Y,
29 Z,
31};
32
35USTRUCT(BlueprintType)
37{
39
41
42 UE_DEPRECATED(5.3, "Please use the constructor that takes an FName")
49
50 UE_DEPRECATED(5.3, "Please use the constructor that takes an FName")
52 : CurveType(InCurveType)
53 {
54 }
55
57 : CurveName(InName)
58 , CurveType(InCurveType)
59 {
60 }
61
63 {
64 return (CurveName == Other.CurveName && CurveType == Other.CurveType
65 && Channel == Other.Channel && Axis == Other.Axis);
66 }
67
69 {
70 return !(*this == Other);
71 }
72
73 bool IsValid() const
74 {
75 return CurveName != NAME_None && CurveType != ERawCurveTrackTypes::RCT_MAX;
76 }
77
79 {
80 return HashCombine(HashCombine(HashCombine((uint32)CurveId.Channel, (uint32)CurveId.Axis), (uint32)CurveId.CurveType), GetTypeHash(CurveId.CurveName));
81 }
82
83 ENGINE_API void PostSerialize(const FArchive& Ar);
84
85#if WITH_EDITORONLY_DATA
86 UPROPERTY()
88#endif
89
90 UPROPERTY()
91 FName CurveName = NAME_None;
92
93 UPROPERTY()
95
96 UPROPERTY()
98
99 UPROPERTY()
101};
102
103template<>
105{
106 enum
107 {
108 WithCopy = true,
109 WithIdenticalViaEquality = true,
110 WithPostSerialize = true,
111 };
112};
113
115UCLASS(MinimalAPI)
117{
119public:
123 UFUNCTION(BlueprintPure, Category = Curve, meta = (ScriptMethod))
125 {
126 return Identifier.IsValid();
127 }
128
132 UFUNCTION(BlueprintPure, Category = Curve, meta = (ScriptMethod))
134 {
135 return Identifier.CurveName;
136 }
137
141 UFUNCTION(BlueprintPure, Category = Curve, meta = (ScriptMethod))
143 {
144 return Identifier.CurveType;
145 }
146
147#if WITH_EDITOR
155 UFUNCTION(BlueprintCallable, Category = Curves, meta = (ScriptMethod))
157
158 UFUNCTION(BlueprintCallable, Category = Curves, meta = (ScriptMethod, DeprecatedFunction, DeprecationMessage="Please use SetCurveIdentifier."))
160
170 UFUNCTION(BlueprintCallable, Category = Curves, meta = (ScriptMethod, DeprecatedFunction, DeprecationMessage="Curve identifiers are no longer retrievable globally from the skeleton, they are specified per-animation."))
172
181 UFUNCTION(BlueprintCallable, Category = Curves, meta = (ScriptMethod, DeprecatedFunction, DeprecationMessage="Curve identifiers are no longer retrievable globally from the skeleton, they are specified per-animation."))
183
193 UFUNCTION(BlueprintCallable, Category = Curves, meta = (ScriptMethod))
195#endif // WITH_EDITOR
196};
197
ERawCurveTrackTypes
Definition AnimCurveTypes.h:1058
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EVectorCurveChannel
Definition CurveIdentifier.h:26
ETransformCurveChannel
Definition CurveIdentifier.h:16
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define UPARAM(...)
Definition ObjectMacros.h:748
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define UCLASS(...)
Definition ObjectMacros.h:776
#define UENUM(...)
Definition ObjectMacros.h:749
#define USTRUCT(...)
Definition ObjectMacros.h:746
constexpr uint32 HashCombine(uint32 A, uint32 C)
Definition TypeHash.h:36
uint8_t uint8
Definition binka_ue_file_header.h:8
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Archive.h:1208
Definition NameTypes.h:617
Definition Array.h:670
Definition CurveIdentifier.h:117
Definition BlueprintFunctionLibrary.h:16
Definition Skeleton.h:295
Definition AnimationAsset.h:38
Definition CurveIdentifier.h:37
bool operator!=(const FAnimationCurveIdentifier &Other) const
Definition CurveIdentifier.h:68
bool IsValid() const
Definition CurveIdentifier.h:73
FAnimationCurveIdentifier(const FName &InName, ERawCurveTrackTypes InCurveType)
Definition CurveIdentifier.h:56
friend uint32 GetTypeHash(const FAnimationCurveIdentifier &CurveId)
Definition CurveIdentifier.h:78
FAnimationCurveIdentifier()=default
bool operator==(const FAnimationCurveIdentifier &Other) const
Definition CurveIdentifier.h:62
Definition SmartName.h:211
Definition StructOpsTypeTraits.h:11
Definition StructOpsTypeTraits.h:46