Overte C++ Documentation
Profiler.h
1 //
2 // Profiler.h
3 // libraries/platform/src/platform
4 //
5 // Created by Sam Gateau on 5/22/2019.
6 // Copyright 2019 High Fidelity, Inc.
7 //
8 // Distributed under the Apache License, Version 2.0.
9 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
10 //
11 #ifndef hifi_platform_Profiler_h
12 #define hifi_platform_Profiler_h
13 
14 #include <array>
15 
16 namespace platform {
17 
18 class Profiler {
19 public:
20  enum Tier {
21  UNKNOWN = 0,
22  LOW_POWER,
23  LOW,
24  MID,
25  HIGH,
26  CUSTOM, // Never used, added for consistency with performance presets
27 
28  NumTiers, // not a valid Tier
29  };
30  static const std::array<const char*, Tier::NumTiers> TierNames;
31 
32  static Tier profilePlatform();
33 
34  // Ugly very adhoc capability check to know if a particular hw can REnder with Deferred method or not
35  static bool isRenderMethodDeferredCapable();
36 };
37 
38 }
39 #endif