00001 #ifndef __CSystemInformation__ 00002 #define __CSystemInformation__ 00003 00004 #include "../Basics/CString.hpp" 00005 #include "SSystemInformation.hpp" 00006 #include "../IO/CTextStream.hpp" 00007 00008 // =========================================================================== 00009 00010 using Exponent::Host::SSystemInformation; 00011 using Exponent::Basics::CString; 00012 using Exponent::IO::CTextStream; 00013 00014 // =========================================================================== 00015 00016 namespace Exponent 00017 { 00018 namespace Host 00019 { 00042 class CSystemInformation 00043 { 00044 public: 00045 00046 // =========================================================================== 00047 00052 static void getSystemInfo(SSystemInformation &sys); 00053 00054 // =========================================================================== 00055 00060 static void dumpSystemInfoToFile(CSystemString &path); 00061 00066 static void dumpSystemInfoToFile(CTextStream &stream); 00067 00068 // =========================================================================== 00069 00074 static long getNumberOfProcessors(); 00075 00076 // =========================================================================== 00077 00082 static CString getComputerName(); 00083 00088 static CString getUserName(); 00089 00090 // =========================================================================== 00091 00097 static bool getOperatingSystemVersion(CString &string); 00098 00105 static void getOsVersionInfo(long &major, long &minor, long &build); 00106 00107 // =========================================================================== 00108 00113 static CString getCpuNameString(); 00114 00119 static long getCpuSpeed(); 00120 00121 // =========================================================================== 00123 #ifdef WIN32 00124 00129 static DWORD determineTimeStamp(); 00130 00132 #endif 00133 00135 }; 00136 } 00137 } 00138 #endif // End of CSystemInformation.hpp