8#include "RealCurve.generated.h"
50 bHasPreExtrapolation = 0;
51 bHasPostExtrapolation = 0;
52 PreExtrapolation = ERichCurveExtrapolation::RCCE_None;
53 PostExtrapolation = ERichCurveExtrapolation::RCCE_None;
86 if (
A.bHasPreExtrapolation &&
B.bHasPreExtrapolation &&
A.PreExtrapolation ==
B.PreExtrapolation)
91 if (
A.bHasPostExtrapolation &&
B.bHasPostExtrapolation &&
A.PostExtrapolation ==
B.PostExtrapolation)
101 return Left.bHasPreExtrapolation ==
Right.bHasPreExtrapolation
102 &&
Left.bHasPostExtrapolation ==
Right.bHasPostExtrapolation
103 && (!
Left.bHasPreExtrapolation ||
Left.PreExtrapolation ==
Right.PreExtrapolation)
104 && (!
Left.bHasPostExtrapolation ||
Left.PostExtrapolation ==
Right.PostExtrapolation);
111 uint8 bHasPreExtrapolation : 1;
113 uint8 bHasPostExtrapolation : 1;
142 return DefaultValue !=
MAX_flt || GetNumKeys();
193 virtual void GetTimeRange(
float& MinTime,
float& MaxTime)
const PURE_VIRTUAL(FRealCurve::GetTimeRange, );
196 virtual void GetValueRange(
float& MinValue,
float& MaxValue)
const PURE_VIRTUAL(FRealCurve::GetValueRange, );
225 UPROPERTY(EditAnywhere, Category = "Curve")
242 WithPureVirtual =
true,
#define check(expr)
Definition AssertionMacros.h:314
@ INDEX_NONE
Definition CoreMiscDefines.h:150
#define PURE_VIRTUAL(func,...)
Definition CoreMiscDefines.h:103
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
#define MAX_flt
Definition NumericLimits.h:29
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define UENUM(...)
Definition ObjectMacros.h:749
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
ERichCurveExtrapolation
Definition RealCurve.h:27
@ UMETA
Definition RealCurve.h:15
ERichCurveInterpMode
Definition RealCurve.h:13
#define UE_KINDA_SMALL_NUMBER
Definition UnrealMathUtility.h:131
Definition EnumAsByte.h:22
@ false
Definition radaudio_common.h:23
Definition RealCurve.h:47
ERichCurveExtrapolation GetPreExtrapolation() const
Definition RealCurve.h:65
FCurveAttributes & SetPreExtrapolation(ERichCurveExtrapolation InPreExtrapolation)
Definition RealCurve.h:71
friend bool operator==(const FCurveAttributes &Left, const FCurveAttributes &Right)
Definition RealCurve.h:99
void UnsetPostExtrapolation()
Definition RealCurve.h:77
FCurveAttributes & SetPostExtrapolation(ERichCurveExtrapolation InPostExtrapolation)
Definition RealCurve.h:72
friend bool operator!=(const FCurveAttributes &Left, const FCurveAttributes &Right)
Definition RealCurve.h:106
static FCurveAttributes MaskCommon(const FCurveAttributes &A, const FCurveAttributes &B)
Definition RealCurve.h:82
FCurveAttributes()
Definition RealCurve.h:48
bool HasPreExtrapolation() const
Definition RealCurve.h:59
void UnsetPreExtrapolation()
Definition RealCurve.h:76
bool HasPostExtrapolation() const
Definition RealCurve.h:60
ERichCurveExtrapolation GetPostExtrapolation() const
Definition RealCurve.h:66
Definition FrameRate.h:21
Definition IndexedCurve.h:18
Definition KeyHandle.h:15
Definition RealCurve.h:125
void ClearDefaultValue()
Definition RealCurve.h:188
float GetDefaultValue() const
Definition RealCurve.h:185
bool HasAnyData() const
Definition RealCurve.h:140
virtual ERichCurveInterpMode GetKeyInterpMode(FKeyHandle KeyHandle) const PURE_VIRTUAL(FRealCurve
Definition RealCurve.h:190
virtual FKeyHandle AddKey(float InTime, float InValue, const bool bUnwindRotation=false, FKeyHandle KeyHandle=FKeyHandle()) PURE_VIRTUAL(FRealCurve
Definition RealCurve.h:151
Definition StructOpsTypeTraits.h:11
Definition StructOpsTypeTraits.h:46