File indexing completed on 2024-04-06 12:01:59
0001 #ifndef CSCObjects_CSCDBL1TPParametersExtended_h
0002 #define CSCObjects_CSCDBL1TPParametersExtended_h
0003
0004 #include "CondFormats/Serialization/interface/Serializable.h"
0005
0006 #include <vector>
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 union S {
0017 unsigned int i;
0018 bool b;
0019 };
0020
0021 class CSCDBL1TPParametersExtended {
0022 public:
0023 CSCDBL1TPParametersExtended();
0024 ~CSCDBL1TPParametersExtended();
0025
0026 int getValueInt(const std::string&) const;
0027 bool getValueBool(const std::string&) const;
0028
0029 void setValue(const std::string&, int);
0030 void setValue(const std::string&, bool);
0031
0032 private:
0033 std::vector<int> paramsInt_;
0034 std::vector<int> paramsBool_;
0035
0036 const std::vector<std::string> paramNamesBool_{
0037
0038 "me11_phase1_alctNarrowMaskForR1a",
0039 "me11_phase1_alctGhostCancellationSideQuality",
0040 "me11_phase1_alctUseCorrectedBx",
0041
0042
0043 "me11_phase1_useDeadTimeZoning",
0044 "me11_phase1_useDynamicStateMachineZone",
0045 "me11_phase1_clctUseCorrectedBx",
0046
0047
0048 "me11_phase1_tmbReadoutEarliest2",
0049 "me11_phase1_tmbDropUsedAlcts",
0050 "me11_phase1_clctToAlct",
0051 "me11_phase1_tmbDropUsedClcts",
0052 "me11_phase1_matchEarliestAlctME11Only",
0053 "me11_phase1_matchEarliestClctME11Only",
0054 };
0055
0056 const std::vector<std::string> paramNamesInt_{
0057
0058 "alctFifoTbins",
0059 "alctFifoPretrig",
0060 "alctDriftDelay",
0061 "alctNplanesHitPretrig",
0062 "alctNplanesHitPattern",
0063 "alctNplanesHitAccelPretrig",
0064 "alctNplanesHitAccelPattern",
0065 "alctTrigMode",
0066 "alctAccelMode",
0067 "alctL1aWindowWidth",
0068 "alctEarlyTbins",
0069
0070
0071 "clctFifoTbins",
0072 "clctFifoPretrig",
0073 "clctHitPersist",
0074 "clctDriftDelay",
0075 "clctNplanesHitPretrig",
0076 "clctNplanesHitPattern",
0077 "clctPidThreshPretrig",
0078 "clctMinSeparation",
0079
0080
0081 "tmbMpcBlockMe1a",
0082 "tmbAlctTrigEnable",
0083 "tmbClctTrigEnable",
0084 "tmbMatchTrigEnable",
0085 "tmbMatchTrigWindowSize",
0086 "tmbTmbL1aWindowSize",
0087
0088
0089 "me11_phase1_alctFifoTbins",
0090 "me11_phase1_alctFifoPretrig",
0091 "me11_phase1_alctDriftDelay",
0092 "me11_phase1_alctNplanesHitPretrig",
0093 "me11_phase1_alctNplanesHitPattern",
0094 "me11_phase1_alctNplanesHitAccelPretrig",
0095 "me11_phase1_alctNplanesHitAccelPattern",
0096 "me11_phase1_alctTrigMode",
0097 "me11_phase1_alctAccelMode",
0098 "me11_phase1_alctL1aWindowWidth",
0099 "me11_phase1_alctEarlyTbins",
0100 "me11_phase1_alctHitPersist",
0101 "me11_phase1_alctGhostCancellationBxDepth",
0102 "me11_phase1_alctPretrigDeadtime",
0103
0104
0105 "me11_phase1_clctFifoTbins",
0106 "me11_phase1_clctFifoPretrig",
0107 "me11_phase1_clctHitPersist",
0108 "me11_phase1_clctDriftDelay",
0109 "me11_phase1_clctNplanesHitPretrig",
0110 "me11_phase1_clctNplanesHitPattern",
0111 "me11_phase1_clctPidThreshPretrig",
0112 "me11_phase1_clctMinSeparation",
0113 "me11_phase1_clctStartBxShift",
0114 "me11_phase1_clctStateMachineZone",
0115 "me11_phase1_clctPretriggerTriggerZone",
0116
0117
0118 "me11_phase1_tmbMpcBlockMe1a",
0119 "me11_phase1_tmbAlctTrigEnable",
0120 "me11_phase1_tmbClctTrigEnable",
0121 "me11_phase1_tmbMatchTrigEnable",
0122 "me11_phase1_tmbMatchTrigWindowSize",
0123 "me11_phase1_tmbTmbL1aWindowSize",
0124 "me11_phase1_tmbEarlyTbins",
0125 "me11_phase1_tmbCrossBxAlgorithm",
0126 "me11_phase1_maxME11LCTs",
0127 };
0128
0129 COND_SERIALIZABLE;
0130 };
0131
0132 #endif