MCPcopy Create free account
hub / github.com/RenderKit/embree / main

Method main

tutorials/common/tutorial/benchmark.cpp:104–149  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

102//////////////////////////////////////////////
103
104int TutorialBenchmark::main(int argc, char** argv, std::string name)
105{
106 commandLineParser.parseCommandLine(argc, argv);
107 updateCommandLine(argc, argv);
108
109 CommandLine commandLine(argc, argv);
110
111#if USE_GOOGLE_BENCHMARK
112 if (!params.legacy && params.minTimeOrIterations > 0)
113 commandLine.add({"--benchmark_min_time=" + std::to_string(params.minTimeOrIterations)});
114 if (!params.legacy && params.repetitions > 0)
115 commandLine.add({"--benchmark_repetitions=" + std::to_string(params.repetitions)});
116#endif
117
118 argc = commandLine.argc();
119 argv = commandLine.argv();
120
121#ifdef USE_GOOGLE_BENCHMARK
122 if (!params.legacy)
123 ::benchmark::Initialize(&argc, argv);
124#endif
125
126 commandLine = CommandLine(argc, argv);
127
128 postParseCommandLine();
129
130 std::string benchmark_name = name;
131 if (endsWith(inputFile, ".xml")) {
132 benchmark_name = getFileName(inputFile);
133 }
134 else if (endsWith(inputFile, ".ecs")) {
135 benchmark_name = getFileName(inputFile);
136 }
137
138 if (params.name != "")
139 benchmark_name = params.name;
140
141 registerBenchmark(benchmark_name, commandLine.argc(), commandLine.argv());
142
143#ifdef USE_GOOGLE_BENCHMARK
144 if (!params.legacy)
145 ::benchmark::RunSpecifiedBenchmarks();
146#endif
147
148 return 0;
149}
150
151// remove the processed commdand line options
152void TutorialBenchmark::updateCommandLine(int& argc, char** argv)

Callers

nothing calls this directly

Calls 8

CommandLineClass · 0.85
getFileNameFunction · 0.85
argcMethod · 0.80
argvMethod · 0.80
to_stringFunction · 0.70
endsWithFunction · 0.70
parseCommandLineMethod · 0.45
addMethod · 0.45

Tested by

no test coverage detected