CMS 3D CMS Logo

L1GtStableParametersTrivialProducer.cc
Go to the documentation of this file.
1 
15 // this class header
17 
18 // system include files
19 #include <memory>
20 #include <vector>
21 
22 // user include files
23 // base class
25 
28 
31 
33 
34 // forward declarations
35 
36 // constructor(s)
38  const edm::ParameterSet& parSet) {
39 
40  // tell the framework what data is being produced
43 
44  // now do what ever other initialization is needed
45 
46  // trigger decision
47 
48  // number of physics trigger algorithms
50  = parSet.getParameter<unsigned int>("NumberPhysTriggers");
51 
52  // additional number of physics trigger algorithms
54  = parSet.getParameter<unsigned int>("NumberPhysTriggersExtended");
55 
56  // number of technical triggers
58  = parSet.getParameter<unsigned int>("NumberTechnicalTriggers");
59 
60  // trigger objects
61 
62  // muons
63  m_numberL1Mu = parSet.getParameter<unsigned int>("NumberL1Mu");
64 
65  // e/gamma and isolated e/gamma objects
66  m_numberL1NoIsoEG = parSet.getParameter<unsigned int>("NumberL1NoIsoEG");
67  m_numberL1IsoEG = parSet.getParameter<unsigned int>("NumberL1IsoEG");
68 
69  // central, forward and tau jets
70  m_numberL1CenJet = parSet.getParameter<unsigned int>("NumberL1CenJet");
71  m_numberL1ForJet = parSet.getParameter<unsigned int>("NumberL1ForJet");
72  m_numberL1TauJet = parSet.getParameter<unsigned int>("NumberL1TauJet");
73 
74  // jet counts
75  m_numberL1JetCounts = parSet.getParameter<unsigned int>("NumberL1JetCounts");
76 
77  // hardware
78 
79  // number of maximum chips defined in the xml file
81  = parSet.getParameter<unsigned int>("NumberConditionChips");
82 
83  // number of pins on the GTL condition chips
85  = parSet.getParameter<unsigned int>("PinsOnConditionChip");
86 
87  // correspondence "condition chip - GTL algorithm word" in the hardware
88  // e.g.: chip 2: 0 - 95; chip 1: 96 - 128 (191)
90  = parSet.getParameter<std::vector<int> >("OrderConditionChip");
91 
92  // number of PSB boards in GT
93  m_numberPsbBoards = parSet.getParameter<int>("NumberPsbBoards");
94 
97  = parSet.getParameter<unsigned int>("IfCaloEtaNumberBits");
98 
100  m_ifMuEtaNumberBits = parSet.getParameter<unsigned int>("IfMuEtaNumberBits");
101 
102  // GT DAQ record organized in words of WordLength bits
103  m_wordLength = parSet.getParameter<int>("WordLength");
104 
105  // one unit in the word is UnitLength bits
106  m_unitLength = parSet.getParameter<int>("UnitLength");
107 
108 }
109 
110 // destructor
112 
113  // empty
114 
115 }
116 
117 // member functions
118 
119 // method called to produce the data
120 std::unique_ptr<L1GtStableParameters>
122  const L1GtStableParametersRcd& iRecord) {
123 
124  auto pL1GtStableParameters = std::make_unique<L1GtStableParameters>();
125 
126  // set the number of physics trigger algorithms
127  pL1GtStableParameters->setGtNumberPhysTriggers(m_numberPhysTriggers);
128 
129  // set the additional number of physics trigger algorithms
130  pL1GtStableParameters->setGtNumberPhysTriggersExtended(m_numberPhysTriggersExtended);
131 
132  // set the number of technical triggers
133  pL1GtStableParameters->setGtNumberTechnicalTriggers(m_numberTechnicalTriggers);
134 
135  // set the number of L1 muons received by GT
136  pL1GtStableParameters->setGtNumberL1Mu(m_numberL1Mu);
137 
138  // set the number of L1 e/gamma objects received by GT
139  pL1GtStableParameters->setGtNumberL1NoIsoEG(m_numberL1NoIsoEG);
140 
141  // set the number of L1 isolated e/gamma objects received by GT
142  pL1GtStableParameters->setGtNumberL1IsoEG(m_numberL1IsoEG);
143 
144  // set the number of L1 central jets received by GT
145  pL1GtStableParameters->setGtNumberL1CenJet(m_numberL1CenJet);
146 
147  // set the number of L1 forward jets received by GT
148  pL1GtStableParameters->setGtNumberL1ForJet(m_numberL1ForJet);
149 
150  // set the number of L1 tau jets received by GT
151  pL1GtStableParameters->setGtNumberL1TauJet(m_numberL1TauJet);
152 
153  // set the number of L1 jet counts received by GT
154  pL1GtStableParameters->setGtNumberL1JetCounts(m_numberL1JetCounts);
155 
156  // hardware stuff
157 
158  // set the number of condition chips in GTL
159  pL1GtStableParameters->setGtNumberConditionChips(m_numberConditionChips);
160 
161  // set the number of pins on the GTL condition chips
162  pL1GtStableParameters->setGtPinsOnConditionChip(m_pinsOnConditionChip);
163 
164  // set the correspondence "condition chip - GTL algorithm word"
165  // in the hardware
166  pL1GtStableParameters->setGtOrderConditionChip(m_orderConditionChip);
167 
168  // set the number of PSB boards in GT
169  pL1GtStableParameters->setGtNumberPsbBoards(m_numberPsbBoards);
170 
171  // set the number of bits for eta of calorimeter objects
172  pL1GtStableParameters->setGtIfCaloEtaNumberBits(m_ifCaloEtaNumberBits);
173 
174  // set the number of bits for eta of muon objects
175  pL1GtStableParameters->setGtIfMuEtaNumberBits(m_ifMuEtaNumberBits);
176 
177  // set WordLength
178  pL1GtStableParameters->setGtWordLength(m_wordLength);
179 
180  // set one UnitLength
181  pL1GtStableParameters->setGtUnitLength(m_unitLength);
182 
183  //
184  //
185  return pL1GtStableParameters;
186 }
T getParameter(std::string const &) const
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:116
unsigned int m_numberTechnicalTriggers
number of technical triggers
unsigned int m_numberL1NoIsoEG
e/gamma and isolated e/gamma objects
unsigned int m_ifCaloEtaNumberBits
number of bits for eta of calorimeter objects
unsigned int m_numberPhysTriggersExtended
additional number of physics trigger algorithms
int m_wordLength
GT DAQ record organized in words of WordLength bits.
std::unique_ptr< L1GtStableParameters > produceGtStableParameters(const L1GtStableParametersRcd &)
public methods
unsigned int m_numberL1CenJet
central, forward and tau jets
L1GtStableParametersTrivialProducer(const edm::ParameterSet &)
constructor
unsigned int m_pinsOnConditionChip
number of pins on the GTL condition chips
int m_unitLength
one unit in the word is UnitLength bits
unsigned int m_ifMuEtaNumberBits
number of bits for eta of muon objects