xref: /aosp_15_r20/external/angle/src/tests/perf_tests/ANGLEPerfTestArgs.h (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1 //
2 // Copyright 2019 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 // ANGLEPerfTestArgs.h:
7 //   Command line arguments for angle_perftests.
8 //
9 
10 #ifndef TESTS_PERF_TESTS_ANGLE_PERF_TEST_ARGS_H_
11 #define TESTS_PERF_TESTS_ANGLE_PERF_TEST_ARGS_H_
12 
13 #include <string>
14 #include <vector>
15 #include "common/Optional.h"
16 
17 namespace angle
18 {
19 extern int gStepsPerTrial;
20 extern int gMaxStepsPerformed;
21 extern bool gEnableTrace;
22 extern const char *gTraceFile;
23 extern const char *gScreenshotDir;
24 extern bool gSaveScreenshots;
25 extern int gScreenshotFrame;
26 extern bool gRunToKeyFrame;
27 extern bool gVerboseLogging;
28 extern bool gWarmup;
29 extern int gTrialTimeSeconds;
30 extern int gTestTrials;
31 extern bool gNoFinish;
32 extern bool gRetraceMode;
33 extern bool gMinimizeGPUWork;
34 extern bool gTraceTestValidation;
35 extern const char *gTraceInterpreter;
36 extern const char *gPerfCounters;
37 extern const char *gUseANGLE;
38 extern const char *gUseGL;
39 extern bool gOffscreen;
40 extern bool gVsync;
41 extern int gFpsLimit;
42 extern const char *gPrintExtensionsToFile;
43 extern const char *gRequestedExtensions;
44 extern bool gIncludeInactiveResources;
45 
46 // Constant for when trace's frame count should be used
47 constexpr int kAllFrames = -1;
48 
49 constexpr int kDefaultScreenshotFrame   = 1;
50 constexpr int kDefaultMaxStepsPerformed = 0;
51 
OneFrame()52 inline bool OneFrame()
53 {
54     return gStepsPerTrial == 1 || gMaxStepsPerformed == 1;
55 }
56 }  // namespace angle
57 
58 #endif  // TESTS_PERF_TESTS_ANGLE_PERF_TEST_ARGS_H_
59