34 bxMin_(iConfig.getParameter<
int>(
"bxMin")),
35 bxMax_(iConfig.getParameter<
int>(
"bxMax")) {
36 produces<L1GctEmCandCollection>(
"isoEm");
37 produces<L1GctEmCandCollection>(
"nonIsoEm");
38 produces<L1GctJetCandCollection>(
"cenJets");
39 produces<L1GctJetCandCollection>(
"forJets");
40 produces<L1GctJetCandCollection>(
"tauJets");
41 produces<L1GctJetCandCollection>(
"isoTauJets");
42 produces<L1GctInternJetDataCollection>();
43 produces<L1GctEtTotalCollection>();
44 produces<L1GctEtHadCollection>();
45 produces<L1GctEtMissCollection>();
46 produces<L1GctHtMissCollection>();
47 produces<L1GctInternEtSumCollection>();
48 produces<L1GctInternHtMissCollection>();
49 produces<L1GctHFBitCountsCollection>();
50 produces<L1GctHFRingEtSumsCollection>();
55 LogDebug(
"l1t|stage 1 Converter") <<
"L1TCaloUpgradeToGCTConverter::produce function called...\n";
116 bool iso = itEGamma->hwIso();
118 L1GctEmCand EmCand(itEGamma->hwPt(), itEGamma->hwPhi(), itEGamma->hwEta(), iso, 0, 0, itBX);
124 isoEmResult->push_back(EmCand);
128 if (nonIsoCount != 4) {
129 nonIsoEmResult->push_back(EmCand);
134 isoEmResult->resize(4 * bxCounter);
135 nonIsoEmResult->resize(4 * bxCounter);
150 const bool forward =
false;
152 L1GctJetCand TauCand(itTau->hwPt(), itTau->hwPhi(), itTau->hwEta(),
true, forward, 0, 0, itBX);
156 tauJetResult->push_back(TauCand);
160 tauJetResult->resize(4 * bxCounter);
175 const bool forward =
false;
177 L1GctJetCand TauCand(itTau->hwPt(), itTau->hwPhi(), itTau->hwEta(),
true, forward, 0, 0, itBX);
180 if (isoTauCount != 4) {
181 isoTauJetResult->push_back(TauCand);
185 isoTauJetResult->resize(4 * bxCounter);
201 const bool forward = ((itJet->hwQual() & 0x2) != 0);
202 L1GctJetCand JetCand(itJet->hwPt(), itJet->hwPhi(), itJet->hwEta(),
false, forward, 0, 0, itBX);
207 forJetResult->push_back(JetCand);
212 cenJetResult->push_back(JetCand);
217 forJetResult->resize(4 * bxCounter);
218 cenJetResult->resize(4 * bxCounter);
232 L1GctEtMiss Cand(itEtSum->hwPt(), itEtSum->hwPhi(), itEtSum->hwQual() & 0x1, itBX);
233 etMissResult->push_back(Cand);
235 L1GctHtMiss Cand(itEtSum->hwPt(), itEtSum->hwPhi(), itEtSum->hwQual() & 0x1, itBX);
236 htMissResult->push_back(Cand);
238 L1GctEtTotal Cand(itEtSum->hwPt(), itEtSum->hwQual() & 0x1, itBX);
239 etTotResult->push_back(Cand);
241 L1GctEtHad Cand(itEtSum->hwPt(), itEtSum->hwQual() & 0x1, itBX);
242 etHadResult->push_back(Cand);
244 LogError(
"l1t|stage 1 Converter") <<
" Unknown EtSumType --- EtSum collection will not be saved...\n ";
247 etMissResult->resize(1 * bxCounter);
248 htMissResult->resize(1 * bxCounter);
249 etTotResult->resize(1 * bxCounter);
250 etHadResult->resize(1 * bxCounter);
277 for (
int i = 0;
i < 4;
i++) {
281 hfRingEtSumResult->push_back(sum);
283 hfRingEtSumResult->resize(1 * bxCounter);
297 for (
int i = 0;
i < 4;
i++) {
301 hfBitCountResult->push_back(count);
302 hfBitCountResult->resize(1 * bxCounter);
326 desc.
add<
int>(
"bxMin", 0);
327 desc.
add<
int>(
"bxMax", 0);
333 descriptions.
add(
"L1TCaloUpgradeToGCTConverter", desc);
static L1GctHFRingEtSums fromGctEmulator(const int16_t bx, const uint16_t etSumPosEtaRing1, const uint16_t etSumNegEtaRing1, const uint16_t etSumPosEtaRing2, const uint16_t etSumNegEtaRing2)
named ctor for GCT emulator
const_iterator end(int bx) const
void produce(edm::StreamID, edm::Event &, edm::EventSetup const &) const override
const edm::EDGetToken EGammaToken_
const edm::EDGetToken EtSumToken_
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
const edm::EDGetToken RlxTauToken_
std::vector< L1GctEtMiss > L1GctEtMissCollection
bool getByToken(EDGetToken token, Handle< PROD > &result) const
std::vector< L1GctHFRingEtSums > L1GctHFRingEtSumsCollection
std::vector< L1GctEtHad > L1GctEtHadCollection
Level-1 Trigger jet candidate.
std::vector< L1GctInternHtMiss > L1GctInternHtMissCollection
void setBitCount(unsigned i, uint16_t c)
set a sum
Persistable copy of missing Et measured at Level-1.
const edm::EDGetToken HfSumsToken_
Level-1 Trigger EM candidate at output of GCT.
std::vector< L1GctEtTotal > L1GctEtTotalCollection
std::vector< L1GctHFBitCounts > L1GctHFBitCountsCollection
std::vector< L1GctJetCand > L1GctJetCandCollection
const edm::EDGetToken JetToken_
std::vector< T >::const_iterator const_iterator
#define DEFINE_FWK_MODULE(type)
Persistable copy of total Et measured at Level-1.
void setEtSum(unsigned i, uint16_t et)
set a sum
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Persistable copy of total Ht measured at Level-1.
const edm::EDGetToken HfCountsToken_
std::vector< L1GctHtMiss > L1GctHtMissCollection
Persistable copy of missing Et measured at Level-1.
void add(std::string const &label, ParameterSetDescription const &psetDescription)
std::vector< L1GctInternJetData > L1GctInternJetDataCollection
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
std::vector< L1GctInternEtSum > L1GctInternEtSumCollection
const edm::EDGetToken IsoTauToken_
const_iterator begin(int bx) const
static L1GctHFBitCounts fromGctEmulator(const int16_t bx, const uint16_t bitCountPosEtaRing1, const uint16_t bitCountNegEtaRing1, const uint16_t bitCountPosEtaRing2, const uint16_t bitCountNegEtaRing2)
named ctor for GCT emulator
std::vector< L1GctEmCand > L1GctEmCandCollection
L1TCaloUpgradeToGCTConverter(const edm::ParameterSet &)