CbmRoot
Loading...
Searching...
No Matches
analysis/common/analysis_tree_converter/app/ProgramOptions.h
Go to the documentation of this file.
1/* Copyright (C) 2023 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Frederic Linz [committer], Volker Friese, Jan de Cuveland */
4
12#ifndef CBM_ATCONVERTER_APP_PROGRAMOPTIONS_H
13#define CBM_ATCONVERTER_APP_PROGRAMOPTIONS_H 1
14
15#define DEFAULT_CONFIG "analysis/common/analysis_tree_converter/config/ATConfig_event.yaml"
16#define DEFAULT_SETUP "sis100_electron"
17
18
19#include <string>
20#include <vector>
21
22namespace cbm::atconverter
23{
24
32 public:
34 ProgramOptions(int argc, char* argv[]) { ParseOptions(argc, argv); }
35
38
41
43 ~ProgramOptions() = default;
44
46 [[nodiscard]] const std::string& OutputFile() const { return fOutput; }
47
49 [[nodiscard]] const std::vector<std::string>& TraFiles() const { return fTra; }
50
52 [[nodiscard]] const std::string& RawFile() const { return fRaw; }
53
55 [[nodiscard]] const std::string& ParFile() const { return fPar; }
56
58 [[nodiscard]] const std::string& RecoFile() const { return fReco; }
59
61 [[nodiscard]] const std::string& ConfigFile() const { return fConfig; }
62
64 [[nodiscard]] const std::string& SetupTag() const { return fSetup; }
65
67 [[nodiscard]] bool Overwrite() const { return fOverwrite; }
68
69
70 private:
72 void ParseOptions(int argc, char* argv[]);
73
74
75 private: // members
76 std::string fOutput = "";
77 std::vector<std::string> fTra;
78 std::string fRaw = "";
79 std::string fPar = "";
80 std::string fReco = "";
81 std::string fConfig = "";
82 std::string fSetup = "";
83 bool fOverwrite = false;
84 };
85
86} // namespace cbm::atconverter
87
88#endif /* CBM_ATCONVERTER_APP_PROGRAMOPTIONS_H */
const std::string & ParFile() const
Get parameter file name.
const std::string & ConfigFile() const
Get configuration file name (YAML format)
ProgramOptions(int argc, char *argv[])
Standard constructor with command line arguments.
std::vector< std::string > fTra
Vector of transport input file names.
~ProgramOptions()=default
Destructor.
const std::vector< std::string > & TraFiles() const
Get vector of transport input file names.
const std::string & SetupTag() const
Get geometry setup tag.
const std::string & RawFile() const
Get digitization file name.
ProgramOptions & operator=(const ProgramOptions &)=delete
Assignment operator forbidden.
const std::string & OutputFile() const
Get output file name (.root format)
const std::string & RecoFile() const
Get reconstruction file name.
ProgramOptions(const ProgramOptions &)=delete
Copy constructor forbidden.
void ParseOptions(int argc, char *argv[])
Parse command line arguments using boost program_options.