5#include "TimerHandle.generated.h"
51 static constexpr uint32 IndexBits = 24;
52 static constexpr uint32 SerialNumberBits = 40;
54 static_assert(IndexBits + SerialNumberBits == 64,
"The space for the timer index and serial number should total 64 bits");
56 static constexpr int32 MaxIndex = (
int32)1 << IndexBits;
57 static constexpr uint64 MaxSerialNumber = (
uint64)1 << SerialNumberBits;
62 check(SerialNumber < MaxSerialNumber);
66 inline int32 GetIndex()
const
71 inline uint64 GetSerialNumber()
const
73 return Handle >> IndexBits;
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_DYNAMIC_DELEGATE(DelegateName)
Definition DelegateCombinations.h:35
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define USTRUCT(...)
Definition ObjectMacros.h:746
Definition TimerManager.h:133
U16 Index
Definition radfft.cpp:71
Definition TimerHandle.h:12
bool operator==(const FTimerHandle &Other) const
Definition TimerHandle.h:35
FString ToString() const
Definition TimerHandle.h:45
void Invalidate()
Definition TimerHandle.h:30
bool operator!=(const FTimerHandle &Other) const
Definition TimerHandle.h:40
friend uint32 GetTypeHash(const FTimerHandle &InHandle)
Definition TimerHandle.h:79
bool IsValid() const
Definition TimerHandle.h:24
Definition TimerManager.cpp:253