/******************************************************************************** * Copyright (C) 2014-2018 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH * * * * This software is distributed under the terms of the * * GNU Lesser General Public Licence (LGPL) version 3, * * copied verbatim in the file "LICENSE" * ********************************************************************************/ /* * File: FairMQProgOptions.cxx * Author: winckler * * Created on March 11, 2015, 10:20 PM */ #include "FairMQLogger.h" #include "FairMQProgOptions.h" #include "FairProgOptionsHelper.h" #include "FairMQParser.h" #include "FairMQSuboptParser.h" #include "tools/Unique.h" #include // join/split #include #include #include #include using namespace std; using namespace fair::mq; namespace po = boost::program_options; FairMQProgOptions::FairMQProgOptions() : fVarMap() , fFairMQChannelMap() , fAllOptions("FairMQ Command Line Options") , fGeneralOptions("General options") , fMQOptions("FairMQ device options") , fParserOptions("FairMQ channel config parser options") , fConfigMutex() , fChannelInfo() , fChannelKeyMap() , fUnregisteredOptions() , fEvents() { fGeneralOptions.add_options() ("help,h", "Print help") ("version,v", "Print version") ("severity", po::value()->default_value("debug"), "Log severity level: trace, debug, info, state, warn, error, fatal, nolog") ("verbosity", po::value()->default_value("medium"), "Log verbosity level: veryhigh, high, medium, low") ("color", po::value()->default_value(true), "Log color (true/false)") ("log-to-file", po::value()->default_value(""), "Log output to a file.") ("print-options", po::value()->implicit_value(true), "Print options in machine-readable format (