UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
WindowsPlatformTime.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"
8
9
20{
21 static CORE_API double InitTiming();
22
23 static inline double Seconds()
24 {
27
28 // add big number to make bugs apparent where return value is being passed to float
29 return (double)Cycles.QuadPart * GetSecondsPerCycle() + 16777216.0;
30 }
31
32 static inline uint32 Cycles()
33 {
36 return (uint32)Cycles.QuadPart;
37 }
38
39 static inline uint64 Cycles64()
40 {
42 QueryPerformanceCounter(&Cycles);
43 return Cycles.QuadPart;
44 }
45
46
49
50 static CORE_API bool UpdateCPUTime( float DeltaTime );
51 static CORE_API bool UpdateThreadCPUTime(float = 0.0);
52 static CORE_API void AutoUpdateGameThreadCPUTime(double UpdateInterval);
56
57protected:
58
61};
62
63
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
FPlatformTypes::uint64 uint64
A 64-bit unsigned integer.
Definition Platform.h:1117
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
FWindowsPlatformTime FPlatformTime
Definition WindowsPlatformTime.h:64
uint32_t uint32
Definition binka_ue_file_header.h:6
MINIMAL_WINDOWS_API BOOL WINAPI QueryPerformanceCounter(LPLARGE_INTEGER Cycles)
Definition GenericPlatformTime.h:16
Definition GenericPlatformTime.h:43
static double GetSecondsPerCycle()
Definition GenericPlatformTime.h:177
Definition WindowsPlatformTime.h:20
static CORE_API void SystemTime(int32 &Year, int32 &Month, int32 &DayOfWeek, int32 &Day, int32 &Hour, int32 &Min, int32 &Sec, int32 &MSec)
Definition WindowsPlatformTime.cpp:45
static CORE_API void AutoUpdateGameThreadCPUTime(double UpdateInterval)
Definition WindowsPlatformTime.cpp:175
static CORE_API void UtcTime(int32 &Year, int32 &Month, int32 &DayOfWeek, int32 &Day, int32 &Hour, int32 &Min, int32 &Sec, int32 &MSec)
Definition WindowsPlatformTime.cpp:61
static CORE_API FCPUTime GetCPUTime()
Definition WindowsPlatformTime.cpp:187
static CORE_API float CPUTimePctRelative
Definition WindowsPlatformTime.h:60
static CORE_API bool UpdateCPUTime(float DeltaTime)
Definition WindowsPlatformTime.cpp:99
static uint64 Cycles64()
Definition WindowsPlatformTime.h:39
static CORE_API FCPUTime GetThreadCPUTime()
Definition WindowsPlatformTime.cpp:192
static CORE_API double GetLastIntervalThreadCPUTimeInSeconds()
Definition WindowsPlatformTime.cpp:199
static CORE_API bool UpdateThreadCPUTime(float=0.0)
Definition WindowsPlatformTime.cpp:135
static uint32 Cycles()
Definition WindowsPlatformTime.h:32
static CORE_API double InitTiming()
Definition WindowsPlatformTime.cpp:27
static double Seconds()
Definition WindowsPlatformTime.h:23
Definition MinimalWindowsApi.h:194