UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
AndroidStats.cpp File Reference

Macros

#define HWCPIPE_SUPPORTED   0
 
#define CSV_CUSTOM_STAT_DEFINED_BY_PTR(StatPtr, Value, Op)
 

Functions

 DEFINE_LOG_CATEGORY_STATIC (LogAndroidStats, Log, Log)
 
 DECLARE_STATS_GROUP (TEXT("Android CPU stats"), STATGROUP_AndroidCPU, STATCAT_Advanced)
 
 CSV_DEFINE_CATEGORY (AndroidCPU, true)
 
 CSV_DEFINE_CATEGORY (AndroidMemory, true)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Num Frequency Groups"), STAT_NumFreqGroups, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 0 : Max frequency (MHz)"), STAT_FreqGroup0MaxFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 0 : Min frequency (MHz)"), STAT_FreqGroup0MinFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 0 : Current frequency (MHz)"), STAT_FreqGroup0CurrentFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Freq Group 0 : Current frequency (% from Max)"), STAT_FreqGroup0CurrentFrequencyPercentage, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 0 : Num Cores"), STAT_FreqGroup0NumCores, STATGROUP_AndroidCPU)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUFreqMHzGroup0)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUFreqPercentageGroup0)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 1 : Max frequency (MHz)"), STAT_FreqGroup1MaxFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 1 : Min frequency (MHz)"), STAT_FreqGroup1MinFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 1 : Current frequency (MHz)"), STAT_FreqGroup1CurrentFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Freq Group 1 : Current frequency (% from Max)"), STAT_FreqGroup1CurrentFrequencyPercentage, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 1 : Num Cores"), STAT_FreqGroup1NumCores, STATGROUP_AndroidCPU)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUFreqMHzGroup1)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUFreqPercentageGroup1)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 2 : Max frequency (MHz)"), STAT_FreqGroup2MaxFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 2 : Min frequency (MHz)"), STAT_FreqGroup2MinFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 2 : Current frequency (MHz)"), STAT_FreqGroup2CurrentFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Freq Group 2 : Current frequency (% from Max)"), STAT_FreqGroup2CurrentFrequencyPercentage, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 2 : Num Cores"), STAT_FreqGroup2NumCores, STATGROUP_AndroidCPU)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUFreqMHzGroup2)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUFreqPercentageGroup2)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 3 : Max frequency (MHz)"), STAT_FreqGroup3MaxFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 3 : Min frequency (MHz)"), STAT_FreqGroup3MinFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 3 : Current frequency (MHz)"), STAT_FreqGroup3CurrentFrequency, STATGROUP_AndroidCPU)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Freq Group 3 : Current frequency (% from Max)"), STAT_FreqGroup3CurrentFrequencyPercentage, STATGROUP_AndroidCPU)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Freq Group 3 : Num Cores"), STAT_FreqGroup3NumCores, STATGROUP_AndroidCPU)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUFreqMHzGroup3)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUFreqPercentageGroup3)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Num CPU Cores"), STAT_NumCPUCores, STATGROUP_AndroidCPU)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Freq Group 0 : highest core utilization %"), STAT_FreqGroup0MaxUtilization, STATGROUP_AndroidCPU)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Freq Group 1 : highest core utilization %"), STAT_FreqGroup1MaxUtilization, STATGROUP_AndroidCPU)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Freq Group 2 : highest core utilization %"), STAT_FreqGroup2MaxUtilization, STATGROUP_AndroidCPU)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Freq Group 3 : highest core utilization %"), STAT_FreqGroup3MaxUtilization, STATGROUP_AndroidCPU)
 
 CSV_DEFINE_STAT (AndroidCPU, CPUTemp)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("CPU Temperature"), STAT_CPUTemp, STATGROUP_AndroidCPU)
 
 CSV_DEFINE_STAT (AndroidCPU, ThermalStatus)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Thermal Status"), STAT_ThermalStatus, STATGROUP_AndroidCPU)
 
 CSV_DEFINE_STAT (AndroidCPU, ThermalStress)
 
 DECLARE_FLOAT_COUNTER_STAT (TEXT("Thermal Stress"), STAT_ThermalStress, STATGROUP_AndroidCPU)
 
 CSV_DEFINE_STAT (AndroidMemory, TrimMemoryBackgroundLevel)
 
 CSV_DEFINE_STAT (AndroidMemory, TrimMemoryForegroundLevel)
 
 CSV_DEFINE_STAT (AndroidMemory, Mem_RSS)
 
 CSV_DEFINE_STAT (AndroidMemory, Mem_Swap)
 
 CSV_DEFINE_STAT (AndroidMemory, Mem_TotalUsed)
 

Macro Definition Documentation

◆ CSV_CUSTOM_STAT_DEFINED_BY_PTR

#define CSV_CUSTOM_STAT_DEFINED_BY_PTR (   StatPtr,
  Value,
  Op 
)

◆ HWCPIPE_SUPPORTED

#define HWCPIPE_SUPPORTED   0

Function Documentation

◆ CSV_DEFINE_CATEGORY() [1/2]

CSV_DEFINE_CATEGORY ( AndroidCPU  ,
true   
)

◆ CSV_DEFINE_CATEGORY() [2/2]

CSV_DEFINE_CATEGORY ( AndroidMemory  ,
true   
)

◆ CSV_DEFINE_STAT() [1/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUFreqMHzGroup0   
)

◆ CSV_DEFINE_STAT() [2/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUFreqMHzGroup1   
)

◆ CSV_DEFINE_STAT() [3/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUFreqMHzGroup2   
)

◆ CSV_DEFINE_STAT() [4/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUFreqMHzGroup3   
)

◆ CSV_DEFINE_STAT() [5/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUFreqPercentageGroup0   
)

◆ CSV_DEFINE_STAT() [6/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUFreqPercentageGroup1   
)

◆ CSV_DEFINE_STAT() [7/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUFreqPercentageGroup2   
)

◆ CSV_DEFINE_STAT() [8/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUFreqPercentageGroup3   
)

◆ CSV_DEFINE_STAT() [9/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
CPUTemp   
)

◆ CSV_DEFINE_STAT() [10/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
ThermalStatus   
)

◆ CSV_DEFINE_STAT() [11/16]

CSV_DEFINE_STAT ( AndroidCPU  ,
ThermalStress   
)

◆ CSV_DEFINE_STAT() [12/16]

CSV_DEFINE_STAT ( AndroidMemory  ,
Mem_RSS   
)

◆ CSV_DEFINE_STAT() [13/16]

CSV_DEFINE_STAT ( AndroidMemory  ,
Mem_Swap   
)

◆ CSV_DEFINE_STAT() [14/16]

CSV_DEFINE_STAT ( AndroidMemory  ,
Mem_TotalUsed   
)

◆ CSV_DEFINE_STAT() [15/16]

CSV_DEFINE_STAT ( AndroidMemory  ,
TrimMemoryBackgroundLevel   
)

◆ CSV_DEFINE_STAT() [16/16]

CSV_DEFINE_STAT ( AndroidMemory  ,
TrimMemoryForegroundLevel   
)

◆ DECLARE_DWORD_COUNTER_STAT() [1/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 0 : Current frequency (MHz)")  ,
STAT_FreqGroup0CurrentFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [2/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 0 : Max frequency (MHz)")  ,
STAT_FreqGroup0MaxFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [3/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 0 : Min frequency (MHz)")  ,
STAT_FreqGroup0MinFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [4/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 0 : Num Cores" ,
STAT_FreqGroup0NumCores  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [5/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 1 : Current frequency (MHz)")  ,
STAT_FreqGroup1CurrentFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [6/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 1 : Max frequency (MHz)")  ,
STAT_FreqGroup1MaxFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [7/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 1 : Min frequency (MHz)")  ,
STAT_FreqGroup1MinFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [8/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 1 : Num Cores" ,
STAT_FreqGroup1NumCores  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [9/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 2 : Current frequency (MHz)")  ,
STAT_FreqGroup2CurrentFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [10/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 2 : Max frequency (MHz)")  ,
STAT_FreqGroup2MaxFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [11/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 2 : Min frequency (MHz)")  ,
STAT_FreqGroup2MinFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [12/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 2 : Num Cores" ,
STAT_FreqGroup2NumCores  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [13/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 3 : Current frequency (MHz)")  ,
STAT_FreqGroup3CurrentFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [14/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 3 : Max frequency (MHz)")  ,
STAT_FreqGroup3MaxFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [15/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 3 : Min frequency (MHz)")  ,
STAT_FreqGroup3MinFrequency  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [16/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Freq Group 3 : Num Cores" ,
STAT_FreqGroup3NumCores  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [17/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Num CPU Cores" ,
STAT_NumCPUCores  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [18/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Num Frequency Groups" ,
STAT_NumFreqGroups  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_DWORD_COUNTER_STAT() [19/19]

DECLARE_DWORD_COUNTER_STAT ( TEXT("Thermal Status" ,
STAT_ThermalStatus  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [1/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("CPU Temperature" ,
STAT_CPUTemp  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [2/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Freq Group 0 : Current frequency (% from Max)")  ,
STAT_FreqGroup0CurrentFrequencyPercentage  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [3/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Freq Group 0 : highest core utilization %")  ,
STAT_FreqGroup0MaxUtilization  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [4/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Freq Group 1 : Current frequency (% from Max)")  ,
STAT_FreqGroup1CurrentFrequencyPercentage  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [5/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Freq Group 1 : highest core utilization %")  ,
STAT_FreqGroup1MaxUtilization  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [6/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Freq Group 2 : Current frequency (% from Max)")  ,
STAT_FreqGroup2CurrentFrequencyPercentage  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [7/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Freq Group 2 : highest core utilization %")  ,
STAT_FreqGroup2MaxUtilization  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [8/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Freq Group 3 : Current frequency (% from Max)")  ,
STAT_FreqGroup3CurrentFrequencyPercentage  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [9/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Freq Group 3 : highest core utilization %")  ,
STAT_FreqGroup3MaxUtilization  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_FLOAT_COUNTER_STAT() [10/10]

DECLARE_FLOAT_COUNTER_STAT ( TEXT("Thermal Stress" ,
STAT_ThermalStress  ,
STATGROUP_AndroidCPU   
)

◆ DECLARE_STATS_GROUP()

DECLARE_STATS_GROUP ( TEXT("Android CPU stats" ,
STATGROUP_AndroidCPU  ,
STATCAT_Advanced   
)

◆ DEFINE_LOG_CATEGORY_STATIC()

DEFINE_LOG_CATEGORY_STATIC ( LogAndroidStats  ,
Log  ,
Log   
)