Slicer  4.8
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkSystemInformation.h
Go to the documentation of this file.
1 #ifndef __vtkSystemInformation_h
2 #define __vtkSystemInformation_h
3 
4 // SlicerLogic includes
5 #include "vtkSlicerBaseLogic.h"
6 
7 // VTK includes
8 #include <vtkObject.h>
9 
10 // VTKSYS includes
11 #include <vtksys/SystemInformation.hxx>
12 
13 // STD includes
14 #include <string>
15 
16 class VTK_SLICER_BASE_LOGIC_EXPORT vtkSystemInformation : public vtkObject
17 {
18 public:
19  static vtkSystemInformation *New();
20  vtkTypeMacro(vtkSystemInformation,vtkObject);
21  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
22 
23  const char * GetVendorString();
24  const char * GetVendorID();
25  const char * GetTypeID();
26  const char * GetFamilyID();
27  const char * GetModelName();
28  const char * GetModelID();
29  const char * GetSteppingCode();
30  const char * GetExtendedProcessorName();
31  const char * GetProcessorSerialNumber();
32  int GetProcessorCacheSize();
33  int GetLogicalProcessorsPerPhysical();
34  float GetProcessorClockFrequency();
35  int GetProcessorAPICID();
36  int GetProcessorCacheXSize(long int);
37  int DoesCPUSupportFeature(long int);
38 
39  const char * GetOSName();
40  const char * GetHostname();
41  const char * GetOSRelease();
42  const char * GetOSVersion();
43  const char * GetOSPlatform();
44 
45  int Is64Bits();
46 
47  unsigned int GetNumberOfLogicalCPU(); // per physical cpu
48  unsigned int GetNumberOfPhysicalCPU();
49 
50  int DoesCPUSupportCPUID();
51 
52  // Retrieve memory information in megabyte.
53  unsigned long GetTotalVirtualMemory();
54  unsigned long GetAvailableVirtualMemory();
55  unsigned long GetTotalPhysicalMemory();
56  unsigned long GetAvailablePhysicalMemory();
57 
58  // Run the different checks
59  void RunCPUCheck();
60  void RunOSCheck();
61  void RunMemoryCheck();
62 
63 protected:
64 
66  virtual ~vtkSystemInformation();
68  void operator=(const vtkSystemInformation&);
69 
70  //private:
71 
72  vtksys::SystemInformation SystemInformation;
73  std::string StringHolder;
74 
75 };
76 #endif
vtksys::SystemInformation SystemInformation