28 template<
typename T,
typename =
typename TEnableIf<std::is_same_v<T,
int32>>::Type>
116 FrameTime.Serialize(Ar);
122 return A.FrameNumber ==
B.FrameNumber &&
A.SubFrame ==
B.SubFrame;
128 return A.FrameNumber !=
B.FrameNumber ||
A.SubFrame !=
B.SubFrame;
134 return A.FrameNumber >
B.FrameNumber || (
A.FrameNumber ==
B.FrameNumber &&
A.SubFrame >
B.SubFrame );
140 return A.FrameNumber >
B.FrameNumber || (
A.FrameNumber ==
B.FrameNumber &&
A.SubFrame >=
B.SubFrame );
146 return A.FrameNumber <
B.FrameNumber || (
A.FrameNumber ==
B.FrameNumber &&
A.SubFrame <
B.SubFrame );
152 return A.FrameNumber <
B.FrameNumber || (
A.FrameNumber ==
B.FrameNumber &&
A.SubFrame <=
B.SubFrame );
206 check(
B.FrameNumber.Value != 0 ||
B.GetSubFrame() != 0.f);
208 if (
A.SubFrame == 0.f &&
B.SubFrame == 0.f)
250 : FrameNumber(0), SubFrame(0.f)
254template<
typename T,
typename>
325 return FString::Printf(
TEXT(
"Frame: %d Subframe: %f"),
InTime.GetFrame().Value,
InTime.GetSubFrame());
331 return FString::Printf(
TEXT(
"%d.%f"),
InTime.GetFrame().Value,
InTime.GetSubFrame());
#define checkSlow(expr)
Definition AssertionMacros.h:332
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
FString LexToShortString(const FFrameTime InTime)
Definition FrameTime.h:329
FString LexToString(const FFrameTime InTime)
Definition FrameTime.h:323
Definition Archive.h:1208
Definition FrameTime.h:16
friend UE_FORCEINLINE_HINT bool operator>=(FFrameTime A, FFrameTime B)
Definition FrameTime.h:138
friend UE_FORCEINLINE_HINT bool operator>(FFrameTime A, FFrameTime B)
Definition FrameTime.h:132
friend UE_FORCEINLINE_HINT FFrameTime operator*(FFrameTime A, double Scalar)
Definition FrameTime.h:232
friend FFrameTime operator-(FFrameTime A)
Definition FrameTime.h:224
friend FFrameTime operator-(FFrameTime A, FFrameTime B)
Definition FrameTime.h:192
friend FArchive & operator<<(FArchive &Ar, FFrameTime &FrameTime)
Definition FrameTime.h:114
FFrameTime()
Definition FrameTime.h:249
static FFrameTime FromDecimal(double InDecimalFrame)
Definition FrameTime.h:313
FFrameNumber FrameNumber
Definition FrameTime.h:98
FFrameNumber FloorToFrame() const
Definition FrameTime.h:290
bool Serialize(FArchive &Ar)
Definition FrameTime.h:275
double AsDecimal() const
Definition FrameTime.h:308
UE_FORCEINLINE_HINT float GetSubFrame() const
Definition FrameTime.h:64
friend UE_FORCEINLINE_HINT bool operator!=(FFrameTime A, FFrameTime B)
Definition FrameTime.h:126
friend UE_FORCEINLINE_HINT FFrameTime operator/(FFrameTime A, double Scalar)
Definition FrameTime.h:242
friend FFrameTime & operator+=(FFrameTime &LHS, FFrameTime RHS)
Definition FrameTime.h:156
friend FFrameTime & operator-=(FFrameTime &LHS, FFrameTime RHS)
Definition FrameTime.h:177
FFrameTime & operator=(FFrameNumber InFrameNumber)
Definition FrameTime.h:283
friend UE_FORCEINLINE_HINT FFrameTime operator*(double Scalar, FFrameTime A)
Definition FrameTime.h:237
FFrameNumber CeilToFrame() const
Definition FrameTime.h:296
FFrameNumber RoundToFrame() const
Definition FrameTime.h:302
static CORE_API const float MaxSubframe
Definition FrameTime.h:18
UE_FORCEINLINE_HINT FFrameNumber GetFrame() const
Definition FrameTime.h:56
friend UE_FORCEINLINE_HINT bool operator<=(FFrameTime A, FFrameTime B)
Definition FrameTime.h:150
friend UE_FORCEINLINE_HINT bool operator==(FFrameTime A, FFrameTime B)
Definition FrameTime.h:120
friend FFrameTime operator+(FFrameTime A, FFrameTime B)
Definition FrameTime.h:168
friend UE_FORCEINLINE_HINT bool operator<(FFrameTime A, FFrameTime B)
Definition FrameTime.h:144
friend FFrameTime operator%(FFrameTime A, FFrameTime B)
Definition FrameTime.h:204
static constexpr UE_FORCEINLINE_HINT T Clamp(const T X, const T MinValue, const T MaxValue)
Definition UnrealMathUtility.h:592
Definition NumericLimits.h:41