CMS 3D CMS Logo

CSCDBL1TPParametersExtended.h
Go to the documentation of this file.
1 #ifndef CSCObjects_CSCDBL1TPParametersExtended_h
2 #define CSCObjects_CSCDBL1TPParametersExtended_h
3 
5 
6 #include <vector>
7 
16 union S {
17  unsigned int i;
18  bool b;
19 };
20 
22 public:
25 
26  int getValueInt(const std::string&) const;
27  bool getValueBool(const std::string&) const;
28 
29  void setValue(const std::string&, int);
30  void setValue(const std::string&, bool);
31 
32 private:
33  std::vector<int> paramsInt_;
34  std::vector<int> paramsBool_;
35 
36  const std::vector<std::string> paramNamesBool_{
37  /* ME11 ALCT Phase-1 Upgrade Parameters */
38  "me11_phase1_alctNarrowMaskForR1a",
39  "me11_phase1_alctGhostCancellationSideQuality",
40  "me11_phase1_alctUseCorrectedBx",
41 
42  /* ME11 CLCT Phase-1 Upgrade Parameters */
43  "me11_phase1_useDeadTimeZoning",
44  "me11_phase1_useDynamicStateMachineZone",
45  "me11_phase1_clctUseCorrectedBx",
46 
47  /* ME11 TMB Phase-1 Upgrade Parameters */
48  "me11_phase1_tmbReadoutEarliest2",
49  "me11_phase1_tmbDropUsedAlcts",
50  "me11_phase1_clctToAlct",
51  "me11_phase1_tmbDropUsedClcts",
52  "me11_phase1_matchEarliestAlctME11Only",
53  "me11_phase1_matchEarliestClctME11Only",
54  };
55 
56  const std::vector<std::string> paramNamesInt_{
57  /* Parameters %for 2007 version of ALCT firmware */
58  "alctFifoTbins",
59  "alctFifoPretrig",
60  "alctDriftDelay",
61  "alctNplanesHitPretrig",
62  "alctNplanesHitPattern",
63  "alctNplanesHitAccelPretrig",
64  "alctNplanesHitAccelPattern",
65  "alctTrigMode",
66  "alctAccelMode",
67  "alctL1aWindowWidth",
68  "alctEarlyTbins",
69 
70  /* Parameters for 2007 version of CLCT firmware */
71  "clctFifoTbins",
72  "clctFifoPretrig",
73  "clctHitPersist",
74  "clctDriftDelay",
75  "clctNplanesHitPretrig",
76  "clctNplanesHitPattern",
77  "clctPidThreshPretrig",
78  "clctMinSeparation",
79 
80  /* Parameters for 2007 version of TMB firmware */
81  "tmbMpcBlockMe1a",
82  "tmbAlctTrigEnable",
83  "tmbClctTrigEnable",
84  "tmbMatchTrigEnable",
85  "tmbMatchTrigWindowSize",
86  "tmbTmbL1aWindowSize",
87 
88  /* ME11 ALCT Phase-1 Upgrade Parameters */
89  "me11_phase1_alctFifoTbins",
90  "me11_phase1_alctFifoPretrig",
91  "me11_phase1_alctDriftDelay",
92  "me11_phase1_alctNplanesHitPretrig",
93  "me11_phase1_alctNplanesHitPattern",
94  "me11_phase1_alctNplanesHitAccelPretrig",
95  "me11_phase1_alctNplanesHitAccelPattern",
96  "me11_phase1_alctTrigMode",
97  "me11_phase1_alctAccelMode",
98  "me11_phase1_alctL1aWindowWidth",
99  "me11_phase1_alctEarlyTbins",
100  "me11_phase1_alctHitPersist",
101  "me11_phase1_alctGhostCancellationBxDepth",
102  "me11_phase1_alctPretrigDeadtime",
103 
104  /* ME11 CLCT Phase-1 Upgrade Parameters */
105  "me11_phase1_clctFifoTbins",
106  "me11_phase1_clctFifoPretrig",
107  "me11_phase1_clctHitPersist",
108  "me11_phase1_clctDriftDelay",
109  "me11_phase1_clctNplanesHitPretrig",
110  "me11_phase1_clctNplanesHitPattern",
111  "me11_phase1_clctPidThreshPretrig",
112  "me11_phase1_clctMinSeparation",
113  "me11_phase1_clctStartBxShift",
114  "me11_phase1_clctStateMachineZone",
115  "me11_phase1_clctPretriggerTriggerZone",
116 
117  /* ME11 TMB Phase-1 Upgrade Parameters */
118  "me11_phase1_tmbMpcBlockMe1a",
119  "me11_phase1_tmbAlctTrigEnable",
120  "me11_phase1_tmbClctTrigEnable",
121  "me11_phase1_tmbMatchTrigEnable",
122  "me11_phase1_tmbMatchTrigWindowSize",
123  "me11_phase1_tmbTmbL1aWindowSize",
124  "me11_phase1_tmbEarlyTbins",
125  "me11_phase1_tmbCrossBxAlgorithm",
126  "me11_phase1_maxME11LCTs",
127  };
128 
130 };
131 
132 #endif
const std::vector< std::string > paramNamesBool_
const std::vector< std::string > paramNamesInt_
int getValueInt(const std::string &) const
void setValue(const std::string &, int)
bool getValueBool(const std::string &) const
#define COND_SERIALIZABLE
Definition: Serializable.h:39
unsigned int i