ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
S800TSettings.h
Go to the documentation of this file.
1 /*
2 
3  Header For ROOT Settings Object.
4  Will Store information for various builds.
5 
6 
7 
8  */
9 #ifndef __SETTINGS_HH
10 #define __SETTINGS_HH
11 
12 #include <Rtypes.h>
13 #include <TNamed.h>
14 
15 #include <iostream>
16 #include <map>
17 #include <string>
18 
19 class TBuffer;
20 class TClass;
21 class TMemberInspector;
22 
23 using namespace std;
24 
25 class S800TSettings : public TNamed {
26 
27 public:
28  S800TSettings();
30 
31  void PrintAll();
32  void PrintChannelCorrections(string Name);
33  void PrintChannelMapInfo(int GlobalID);
34  void PrintChannelMapInfo(string Name);
35  void PrintFilterInfo(string Name);
36 
37  double GetChannelsSlope(string Name) { return TheEnergySlopes[Name]; }
38  double GetChannelsIntercept(string Name) { return TheEnergyIntercepts[Name]; }
39  double GetChannelsTimeOffset(string Name) { return TheTimingOffsets[Name]; }
40 
41  int GetBarId(string Name) { return BarIds[Name]; }
42  string GetBarName(int BarId) { return BarId2Name[BarId]; }
43 
44  void AddCorrectionSettings(string Name, double slope, double inter, double toff);
45  void AddMapSettings(string Name, int GlobalID, string RefName, int refGlobalID);
46  void AddFilterSettings(string Name, int FL, int FG, int d, int w, bool flag);
47 
48  void SetBarIds(map<string, int> v);
49 
50  inline Int_t GetNumBars() { return BarIds.size(); }
51 
52 private:
53  map<string, double> TheTimingOffsets;
54  map<string, double> TheEnergySlopes;
55  map<string, double> TheEnergyIntercepts;
56 
57  map<string, int> TheFLs;
58  map<string, int> TheFGs;
59  map<string, int> Theds;
60  map<string, int> Thews;
61  map<string, bool> TheDontTraceAnalyzeFlags;
62 
63  map<int, string> GlobalID2FullName;
64  map<int, int> GlobalID2RefGlobalID;
65  map<int, string> GlobalID2RefName;
66 
67  map<string, int> Name2GlobalID;
68 
69  map<string, int> BarIds;
70  void BuildReverseMap();
71  map<int, string> BarId2Name;
72 
73 public:
75 };
76 
77 #endif
S800TSettings::GetNumBars
Int_t GetNumBars()
Definition: S800TSettings.h:50
S800TSettings::GetChannelsIntercept
double GetChannelsIntercept(string Name)
Definition: S800TSettings.h:38
S800TSettings::GetChannelsTimeOffset
double GetChannelsTimeOffset(string Name)
Definition: S800TSettings.h:39
S800TSettings::ClassDef
ClassDef(S800TSettings, 2)
S800TSettings::GetChannelsSlope
double GetChannelsSlope(string Name)
Definition: S800TSettings.h:37
S800TSettings::GetBarId
int GetBarId(string Name)
Definition: S800TSettings.h:41
S800TSettings
Definition: S800TSettings.h:25
S800TSettings::GetBarName
string GetBarName(int BarId)
Definition: S800TSettings.h:42
S800TSettings::~S800TSettings
~S800TSettings()