Overte C++ Documentation
PlatformKeys.h
1 //
2 // Created by Amer Cerkic 05/02/2019
3 // Copyright 2019 High Fidelity, Inc.
4 //
5 // Distributed under the Apache License, Version 2.0.
6 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
7 //
8 #ifndef hifi_platform_PlatformKeys_h
9 #define hifi_platform_PlatformKeys_h
10 
11 namespace platform { namespace keys{
12  // "UNKNOWN"
13  extern const char* UNKNOWN;
14 
15  namespace cpu {
16  extern const char* vendor;
17  extern const char* vendor_Intel;
18  extern const char* vendor_AMD;
19 
20  extern const char* model;
21  extern const char* clockSpeed;
22  extern const char* numCores;
23  extern const char* isMaster;
24  }
25  namespace gpu {
26  extern const char* vendor;
27  extern const char* vendor_NVIDIA;
28  extern const char* vendor_AMD;
29  extern const char* vendor_Intel;
30 
31  extern const char* model;
32  extern const char* videoMemory;
33  extern const char* driver;
34  extern const char* displays;
35  extern const char* isMaster;
36  }
37  namespace graphicsAPI {
38  extern const char* name;
39  extern const char* version;
40  extern const char* apiOpenGL;
41  extern const char* apiVulkan;
42  extern const char* apiDirect3D11;
43  extern const char* apiDirect3D12;
44  extern const char* apiMetal;
45  namespace gl {
46  extern const char* shadingLanguageVersion;
47  extern const char* vendor;
48  extern const char* renderer;
49  extern const char* extensions;
50  }
51  namespace vk {
52  extern const char* devices;
53  namespace device {
54  extern const char* apiVersion;
55  extern const char* driverVersion;
56  extern const char* deviceType;
57  extern const char* vendor;
58  extern const char* name;
59  extern const char* formats;
60  extern const char* extensions;
61  extern const char* queues;
62  extern const char* heaps;
63  namespace heap {
64  extern const char* flags;
65  extern const char* size;
66  }
67  namespace queue {
68  extern const char* flags;
69  extern const char* count;
70  }
71  }
72  }
73  }
74  namespace nic {
75  extern const char* mac;
76  extern const char* name;
77  }
78  namespace display {
79  extern const char* description;
80  extern const char* name;
81  extern const char* boundsLeft;
82  extern const char* boundsRight;
83  extern const char* boundsTop;
84  extern const char* boundsBottom;
85  extern const char* gpu;
86  extern const char* ppi;
87  extern const char* ppiDesktop;
88  extern const char* physicalWidth;
89  extern const char* physicalHeight;
90  extern const char* modeRefreshrate;
91  extern const char* modeWidth;
92  extern const char* modeHeight;
93  extern const char* isMaster;
94  }
95  namespace memory {
96  extern const char* memTotal;
97  }
98  namespace computer {
99  extern const char* OS;
100  extern const char* OS_WINDOWS;
101  extern const char* OS_MACOS;
102  extern const char* OS_LINUX;
103  extern const char* OS_ANDROID;
104 
105  extern const char* OSVersion;
106 
107  extern const char* vendor;
108  extern const char* vendor_Apple;
109 
110  extern const char* model;
111 
112  extern const char* profileTier;
113  }
114 
115  // Keys for categories used in json returned by getAll()
116  extern const char* CPUS;
117  extern const char* GPUS;
118  extern const char* GRAPHICS_APIS;
119  extern const char* DISPLAYS;
120  extern const char* NICS;
121  extern const char* MEMORY;
122  extern const char* COMPUTER;
123 
124 } } // namespace plaform::keys
125 
126 #endif