1 /* 2 * Copyright © 2011 Linaro Limited 3 * 4 * This file is part of glcompbench. 5 * 6 * glcompbench is free software: you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation, either version 3 of the License, or 9 * (at your option) any later version. 10 * 11 * glcompbench is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with glcompbench. If not, see <http://www.gnu.org/licenses/>. 18 * 19 * Authors: 20 * Alexandros Frantzis <alexandros.frantzis@linaro.org> 21 * Jesse Barker <jesse.barker@linaro.org> 22 */ 23 24 #ifndef OPTIONS_H_ 25 #define OPTIONS_H_ 26 27 #include <string> 28 #include <vector> 29 #include "gl-visual-config.h" 30 31 struct Options { 32 enum FrameEnd { 33 FrameEndDefault, 34 FrameEndNone, 35 FrameEndSwap, 36 FrameEndFinish, 37 FrameEndReadPixels 38 }; 39 40 static bool parse_args(int argc, char **argv); 41 static void print_help(); 42 43 static std::vector<std::string> benchmarks; 44 static std::vector<std::string> benchmark_files; 45 static bool validate; 46 static std::string data_path; 47 static FrameEnd frame_end; 48 static std::pair<int,int> size; 49 static bool list_scenes; 50 static bool show_all_options; 51 static bool show_debug; 52 static bool show_help; 53 static bool reuse_context; 54 static bool run_forever; 55 static bool annotate; 56 static bool offscreen; 57 static GLVisualConfig visual_config; 58 }; 59 60 #endif /* OPTIONS_H_ */ 61