File indexing completed on 2025-01-18 10:01:26
0001
0002
0003
0004
0005 #pragma once
0006 #include <JANA/JApplication.h>
0007
0008 namespace jana {
0009
0010 enum Flag {Unknown, ShowUsage, ShowVersion, ShowConfigs, LoadConfigs, DumpConfigs, Benchmark, InspectCollection, InspectComponent, Interactive};
0011
0012 struct UserOptions {
0013
0014
0015
0016 std::map<Flag, bool> flags;
0017 std::map<std::string, std::string> params;
0018 std::vector<std::string> eventSources;
0019 std::string load_config_file;
0020 std::string dump_config_file;
0021 std::string collection_query;
0022 std::string component_query;
0023 };
0024
0025 void PrintUsage();
0026 void PrintUsageOptions();
0027 void PrintVersion();
0028 UserOptions ParseCommandLineOptions(int nargs, char *argv[], bool expect_extra=true);
0029 JApplication* CreateJApplication(UserOptions& options);
0030 int Execute(JApplication* app, UserOptions& options);
0031
0032 }
0033