xbmc
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | List of all members
CCPUInfo Class Referenceabstract
Inheritance diagram for CCPUInfo:
Inheritance graph
[legend]
Collaboration diagram for CCPUInfo:
Collaboration graph
[legend]

Public Member Functions

virtual bool SupportsCPUUsage () const
 
virtual int GetUsedPercentage ()=0
 
virtual float GetCPUFrequency ()=0
 
virtual bool GetTemperature (CTemperature &temperature)=0
 
bool HasCoreId (int coreId) const
 
const CoreInfo GetCoreInfo (int coreId)
 
std::string GetCoresUsageString ()
 
unsigned int GetCPUFeatures () const
 
int GetCPUCount () const
 
std::string GetCPUModel ()
 
std::string GetCPUBogoMips ()
 
std::string GetCPUSoC ()
 
std::string GetCPUHardware ()
 
std::string GetCPURevision ()
 
std::string GetCPUSerial ()
 

Static Public Member Functions

static std::shared_ptr< CCPUInfoGetCPUInfo ()
 

Public Attributes

const unsigned int CPUID_INFOTYPE_MANUFACTURER = 0x00000000
 
const unsigned int CPUID_INFOTYPE_STANDARD = 0x00000001
 
const unsigned int CPUID_INFOTYPE_EXTENDED_IMPLEMENTED = 0x80000000
 
const unsigned int CPUID_INFOTYPE_EXTENDED = 0x80000001
 
const unsigned int CPUID_INFOTYPE_PROCESSOR_1 = 0x80000002
 
const unsigned int CPUID_INFOTYPE_PROCESSOR_2 = 0x80000003
 
const unsigned int CPUID_INFOTYPE_PROCESSOR_3 = 0x80000004
 
const unsigned int CPUID_00000001_ECX_SSE3 = (1 << 0)
 
const unsigned int CPUID_00000001_ECX_SSSE3 = (1 << 9)
 
const unsigned int CPUID_00000001_ECX_SSE4 = (1 << 19)
 
const unsigned int CPUID_00000001_ECX_SSE42 = (1 << 20)
 
const unsigned int CPUID_00000001_EDX_MMX = (1 << 23)
 
const unsigned int CPUID_00000001_EDX_SSE = (1 << 25)
 
const unsigned int CPUID_00000001_EDX_SSE2 = (1 << 26)
 
const unsigned int CPUID_80000001_EDX_MMX2 = (1 << 22)
 
const unsigned int CPUID_80000001_EDX_MMX = (1 << 23)
 
const unsigned int CPUID_80000001_EDX_3DNOWEXT = (1 << 30)
 
const unsigned int CPUID_80000001_EDX_3DNOW = (1U << 31)
 
const std::chrono::milliseconds MINIMUM_TIME_BETWEEN_READS {500}
 

Protected Attributes

int m_lastUsedPercentage
 
XbmcThreads::EndTime m_nextUsedReadTime
 
std::string m_cpuVendor
 
std::string m_cpuModel
 
std::string m_cpuBogoMips
 
std::string m_cpuSoC
 
std::string m_cpuHardware
 
std::string m_cpuRevision
 
std::string m_cpuSerial
 
double m_usagePercent {0.0}
 
std::size_t m_activeTime {0}
 
std::size_t m_idleTime {0}
 
std::size_t m_totalTime {0}
 
int m_cpuCount
 
unsigned int m_cpuFeatures
 
std::vector< CoreInfom_cores
 

The documentation for this class was generated from the following files: