Added HardwareInfo::IsInitialized()

Former-commit-id: ef668ac6d2e92a05730b56c892a693a21c7d651e
This commit is contained in:
Lynix 2012-12-13 19:57:05 +01:00
parent 4827711c89
commit 73cb237925
2 changed files with 15 additions and 0 deletions

View File

@ -22,6 +22,9 @@ class NAZARA_API NzHardwareInfo
static bool HasCapability(nzProcessorCap capability); static bool HasCapability(nzProcessorCap capability);
static bool Initialize(); static bool Initialize();
static bool IsInitialized();
static void Uninitialize(); static void Uninitialize();
}; };

View File

@ -20,6 +20,7 @@ namespace
{ {
nzProcessorVendor s_vendorEnum = nzProcessorVendor_Unknown; nzProcessorVendor s_vendorEnum = nzProcessorVendor_Unknown;
bool s_capabilities[nzProcessorCap_Max+1] = {false}; bool s_capabilities[nzProcessorCap_Max+1] = {false};
bool s_initialized = false;
char s_brandString[48] = "Not initialized"; char s_brandString[48] = "Not initialized";
char s_vendor[12] = {'C', 'P', 'U', 'i', 's', 'U', 'n', 'k', 'n', 'o', 'w', 'n'}; char s_vendor[12] = {'C', 'P', 'U', 'i', 's', 'U', 'n', 'k', 'n', 'o', 'w', 'n'};
@ -84,9 +85,14 @@ bool NzHardwareInfo::HasCapability(nzProcessorCap capability)
bool NzHardwareInfo::Initialize() bool NzHardwareInfo::Initialize()
{ {
if (s_initialized)
return true;
if (!NzHardwareInfoImpl::IsCpuidSupported()) if (!NzHardwareInfoImpl::IsCpuidSupported())
return false; return false;
s_initialized = true;
nzUInt32 result[4]; nzUInt32 result[4];
NzHardwareInfoImpl::Cpuid(0, result); NzHardwareInfoImpl::Cpuid(0, result);
@ -165,7 +171,13 @@ bool NzHardwareInfo::Initialize()
return true; return true;
} }
bool NzHardwareInfo::IsInitialized()
{
return s_initialized;
}
void NzHardwareInfo::Uninitialize() void NzHardwareInfo::Uninitialize()
{ {
// Rien à faire // Rien à faire
s_initialized = false;
} }