GRUTinizer
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TGRUTOptions.h
Go to the documentation of this file.
1 #ifndef _TGRUTOPTIONS_H_
2 #define _TGRUTOPTIONS_H_
3 
4 #include <map>
5 
6 #include "TObject.h"
7 
8 #include "TGRUTTypes.h"
9 
10 class TGRUTOptions : public TObject {
11 public:
12  static TGRUTOptions* Get(int argc = 0, char** argv = NULL);
13 
14  void Clear(Option_t* opt = "");
15  void Load(int argc, char** argv);
16  void Print(Option_t* opt = "") const;
17 
18  bool ShouldExit() { return fShouldExit; }
19  const std::vector<std::string>& RawInputFiles() { return input_raw_files; }
20  const std::vector<std::string>& RootInputFiles() { return input_root_files; }
21  const std::vector<std::string>& CalInputFiles() { return input_cal_files; }
22  const std::vector<std::string>& MacroInputFiles() { return input_macro_files; }
23  const std::vector<std::string>& GuiSaveSetFiles() { return input_gui_hist_files; }
24  const std::string& DetectorEnvironment() { return detector_environment; }
25  const std::string& OutputFile() { return output_file; }
26  std::string InputRing() { return input_ring; }
28 
29  int CommandPort() { return fCommandPort; }
30 
31  const std::vector<std::string>& OptionFiles() { return options_file; }
32 
33  bool IgnoreErrors() { return fIgnoreErrors; }
34 
35  bool ExitAfterSorting() const { return fExitAfterSorting; }
36  bool ShowedHelp() const { return fHelp; }
37  bool ShowLogo() const { return fShowLogo; }
38  bool SortRaw() const { return fSortRaw; }
39  bool SortTree() const { return fSortTree; }
40  bool IgnoreMode3() const { return fIgnoreMode3; }
41  bool CommandServer() const { return fCommandServer; }
42  bool ExtractWaves() const { return fExtractWaves; }
43  bool StartGUI() const { return fStartGui; }
44 
45  bool IsOnline() const { return fIsOnline; }
46 
47  bool TimeSortInput() const { return fTimeSortInput; }
48 
49  bool ShouldExitImmediately() const { return fShouldExit; }
50  bool MakeBackupFile() const { return fMakeBackupFile; }
51 
53  kFileType DetermineFileType(const std::string& filename) const;
54 
55  std::string GenerateOutputFilename(const std::string& filename);
56  std::string GenerateOutputFilename(const std::vector<std::string>& filename);
57 
58 
59  bool SetStartGUI(bool flag=true) { fStartGui=flag; }
60 
61 private:
62  TGRUTOptions(int argc, char** argv);
63 
64  bool FileAutoDetect(const std::string& filename);
65 
66  std::vector<std::string> input_raw_files;
67  std::vector<std::string> input_root_files;
68  std::vector<std::string> input_cal_files;
69  std::vector<std::string> input_macro_files;
70  std::vector<std::string> input_gui_hist_files;
71  std::string input_ring;
72 
73  std::string output_file;
74 
75  std::string detector_environment;
77 
78  std::vector<std::string> options_file;
79 
81 
84  bool fHelp;
85  bool fShowLogo;
86  bool fSortRaw;
87  bool fSortTree;
92  bool fIsOnline;
93  bool fStartGui;
94 
96 
99 
101 };
102 
103 #endif /* _TGRUTOPTIONS_H_ */