22bool initOptionsAndParse(bpo::options_description& options,
int argc,
char* argv[], bpo::variables_map& vm)
24 options.add_options()(
25 "TFs-in-parallel,m", bpo::value<int>()->default_value(8),
"Number of TFs to simulate that access the CCDB in parallel")(
26 "TF-processing-time,t", bpo::value<float>()->default_value(10.),
"Seconds supposed to be needed to process a TF")(
27 "ccdb-sercer,s", bpo::value<std::string>()->default_value(
"http://ccdb-test.cern.ch:8080"),
"CCDB server")(
28 "in-file-name,n", bpo::value<std::string>()->default_value(
"cdbSizeV0.txt"),
"File name with list of CCDB entries to upload")(
29 "disable-caching,d", bpo::value<bool>()->default_value(
false)->implicit_value(
true),
"Disable CCDB caching")(
30 "help,h",
"Produce help message.");
33 bpo::store(parse_command_line(argc, argv, options), vm);
36 if (vm.count(
"help")) {
37 std::cout << options << std::endl;
42 }
catch (
const bpo::error& e) {
43 std::cerr << e.what() <<
"\n\n";
44 std::cerr <<
"Error parsing command line arguments; Available options:\n";
46 std::cerr << options << std::endl;
52int main(
int argc,
char* argv[])
54 bpo::options_description options(
"Allowed options");
55 bpo::variables_map vm;
61 auto nTFs = vm[
"TFs-in-parallel"].as<
int>();
62 auto tTF = vm[
"TF-processing-time"].as<
float>();
63 auto& inputFile = vm[
"in-file-name"].as<std::string>();
64 auto& ccdbHost = vm[
"ccdb-sercer"].as<std::string>();
65 auto disableCaching = vm[
"disable-caching"].as<
bool>();
66 retrieveFromCCDB(nTFs, tTF, inputFile, ccdbHost, !disableCaching);