CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
l1t::BXVectorInputProducer Class Reference
Inheritance diagram for l1t::BXVectorInputProducer:
edm::EDProducer edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 BXVectorInputProducer (const ParameterSet &)
 
 ~BXVectorInputProducer () override
 
- Public Member Functions inherited from edm::EDProducer
 EDProducer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
 ~EDProducer () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::EDProducer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 

Private Member Functions

void beginJob () override
 
void beginRun (Run const &iR, EventSetup const &iE) override
 
int convertEtaToHW (double ieta, double minEta, double maxEta, int steps)
 
int convertPhiToHW (double iphi, int steps)
 
int convertPtToHW (double ipt, int maxPt, double step)
 
void endJob () override
 
void endRun (Run const &iR, EventSetup const &iE) override
 
void produce (Event &, EventSetup const &) override
 

Private Attributes

int bxFirst_
 
int bxLast_
 
int counter_
 
std::vector< l1t::EGammaegammaVec_bx0
 
std::vector< l1t::EGammaegammaVec_bxm1
 
std::vector< l1t::EGammaegammaVec_bxm2
 
std::vector< l1t::EGammaegammaVec_bxp1
 
double egEtThreshold_
 
edm::EDGetToken egToken
 
int emptyBxEvt_
 
int emptyBxTrailer_
 
edm::EDGetToken etsumToken
 
std::vector< l1t::EtSumetsumVec_bx0
 
std::vector< l1t::EtSumetsumVec_bxm1
 
std::vector< l1t::EtSumetsumVec_bxm2
 
std::vector< l1t::EtSumetsumVec_bxp1
 
int eventCnt_
 
double jetEtThreshold_
 
edm::EDGetToken jetToken
 
std::vector< l1t::JetjetVec_bx0
 
std::vector< l1t::JetjetVec_bxm1
 
std::vector< l1t::JetjetVec_bxm2
 
std::vector< l1t::JetjetVec_bxp1
 
unsigned long long m_paramsCacheId
 
unsigned int maxNumEGCands_
 
unsigned int maxNumJetCands_
 
unsigned int maxNumMuCands_
 
unsigned int maxNumTauCands_
 
double muEtThreshold_
 
std::vector< l1t::MuonmuonVec_bx0
 
std::vector< l1t::MuonmuonVec_bxm1
 
std::vector< l1t::MuonmuonVec_bxm2
 
std::vector< l1t::MuonmuonVec_bxp1
 
edm::EDGetToken muToken
 
double tauEtThreshold_
 
edm::EDGetToken tauToken
 
std::vector< l1t::TautauVec_bx0
 
std::vector< l1t::TautauVec_bxm1
 
std::vector< l1t::TautauVec_bxm2
 
std::vector< l1t::TautauVec_bxp1
 

Additional Inherited Members

- Public Types inherited from edm::EDProducer
typedef EDProducer ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >>
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from edm::ProducerBase
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Description: Create Proper BX Vector Structure for full GT Test Vector Generation including out of time BX.

         The producer takes the CAL collections with BX=0 and shifts them, inserting them at BX = -2
         and ratcheting older BX information through BX = -1, 0, 1, 2.
Author
: B Winer OSU

Modeled after GenToInputProducer.cc

Definition at line 59 of file BXVectorInputProducer.cc.

Constructor & Destructor Documentation

l1t::BXVectorInputProducer::BXVectorInputProducer ( const ParameterSet iConfig)
explicit

Definition at line 140 of file BXVectorInputProducer.cc.

References unpackData-CaloStage1::egToken, edm::ParameterSet::getParameter(), unpackData-CaloStage1::jetToken, and unpackData-CaloStage1::tauToken.

140  {
141  egToken = consumes<BXVector<l1t::EGamma>>(iConfig.getParameter<InputTag>("egInputTag"));
142  muToken = consumes<BXVector<l1t::Muon>>(iConfig.getParameter<InputTag>("muInputTag"));
143  tauToken = consumes<BXVector<l1t::Tau>>(iConfig.getParameter<InputTag>("tauInputTag"));
144  jetToken = consumes<BXVector<l1t::Jet>>(iConfig.getParameter<InputTag>("jetInputTag"));
145  etsumToken = consumes<BXVector<l1t::EtSum>>(iConfig.getParameter<InputTag>("etsumInputTag"));
146 
147  // register what you produce
148  produces<BXVector<l1t::EGamma>>();
149  produces<BXVector<l1t::Muon>>();
150  produces<BXVector<l1t::Tau>>();
151  produces<BXVector<l1t::Jet>>();
152  produces<BXVector<l1t::EtSum>>();
153 
154  // Setup parameters
155  bxFirst_ = iConfig.getParameter<int>("bxFirst");
156  bxLast_ = iConfig.getParameter<int>("bxLast");
157 
158  maxNumMuCands_ = iConfig.getParameter<unsigned int>("maxMuCand");
159  maxNumJetCands_ = iConfig.getParameter<unsigned int>("maxJetCand");
160  maxNumEGCands_ = iConfig.getParameter<unsigned int>("maxEGCand");
161  maxNumTauCands_ = iConfig.getParameter<unsigned int>("maxTauCand");
162 
163  jetEtThreshold_ = iConfig.getParameter<double>("jetEtThreshold");
164  tauEtThreshold_ = iConfig.getParameter<double>("tauEtThreshold");
165  egEtThreshold_ = iConfig.getParameter<double>("egEtThreshold");
166  muEtThreshold_ = iConfig.getParameter<double>("muEtThreshold");
167 
168  emptyBxTrailer_ = iConfig.getParameter<int>("emptyBxTrailer");
169  emptyBxEvt_ = iConfig.getParameter<int>("emptyBxEvt");
170 
171  // set cache id to zero, will be set at first beginRun:
172  m_paramsCacheId = 0;
173  eventCnt_ = 0;
174  }
T getParameter(std::string const &) const
l1t::BXVectorInputProducer::~BXVectorInputProducer ( )
override

Definition at line 176 of file BXVectorInputProducer.cc.

176 {}

Member Function Documentation

void l1t::BXVectorInputProducer::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDProducer.

Definition at line 419 of file BXVectorInputProducer.cc.

419 {}
void l1t::BXVectorInputProducer::beginRun ( Run const &  iR,
EventSetup const &  iE 
)
overrideprivatevirtual

Reimplemented from edm::EDProducer.

Definition at line 426 of file BXVectorInputProducer.cc.

References LogDebug.

426  {
427  LogDebug("l1t|Global") << "BXVectorInputProducer::beginRun function called...\n";
428 
429  counter_ = 0;
430  }
#define LogDebug(id)
int l1t::BXVectorInputProducer::convertEtaToHW ( double  ieta,
double  minEta,
double  maxEta,
int  steps 
)
private

Definition at line 447 of file BXVectorInputProducer.cc.

References createfilelist::int, and ticl::constants::minEta.

447  {
448  double binWidth = (maxEta - minEta) / steps;
449 
450  //if we are outside the limits, set error
451  if (ieta < minEta)
452  return 99999; //ieta = minEta+binWidth/2.;
453  if (ieta > maxEta)
454  return 99999; //ieta = maxEta-binWidth/2.;
455 
456  int binNum = (int)(ieta / binWidth);
457  if (ieta < 0.)
458  binNum--;
459 
460  // unsigned int hwEta = binNum & bitMask;
461  // Remove masking for BXVectors...only assume in raw data
462 
463  return binNum;
464  }
constexpr float minEta
Definition: Common.h:9
double maxEta
int l1t::BXVectorInputProducer::convertPhiToHW ( double  iphi,
int  steps 
)
private

Definition at line 436 of file BXVectorInputProducer.cc.

References createfilelist::int, M_PI, and AlignmentTrackSelector_cfi::phiMax.

436  {
437  double phiMax = 2 * M_PI;
438  if (iphi < 0)
439  iphi += 2 * M_PI;
440  if (iphi > phiMax)
441  iphi -= phiMax;
442 
443  int hwPhi = int((iphi / phiMax) * steps + 0.00001);
444  return hwPhi;
445  }
#define M_PI
int l1t::BXVectorInputProducer::convertPtToHW ( double  ipt,
int  maxPt,
double  step 
)
private

Definition at line 466 of file BXVectorInputProducer.cc.

References createfilelist::int, and MuonErrorMatrixAnalyzer_cfi::maxPt.

466  {
467  int hwPt = int(ipt / step + 0.0001);
468  // if above max Pt, set to largest value
469  if (hwPt > maxPt)
470  hwPt = maxPt;
471 
472  return hwPt;
473  }
step
Definition: StallMonitor.cc:94
void l1t::BXVectorInputProducer::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDProducer.

Definition at line 422 of file BXVectorInputProducer.cc.

422 {}
void l1t::BXVectorInputProducer::endRun ( Run const &  iR,
EventSetup const &  iE 
)
overrideprivatevirtual

Reimplemented from edm::EDProducer.

Definition at line 433 of file BXVectorInputProducer.cc.

433 {}
void l1t::BXVectorInputProducer::fillDescriptions ( ConfigurationDescriptions descriptions)
static

Definition at line 476 of file BXVectorInputProducer.cc.

References edm::ConfigurationDescriptions::addDefault(), DEFINE_FWK_MODULE, and edm::ParameterSetDescription::setUnknown().

476  {
477  //The following says we do not know what parameters are allowed so do no validation
478  // Please change this to state exactly what you do use, even if it is no parameters
480  desc.setUnknown();
481  descriptions.addDefault(desc);
482  }
void addDefault(ParameterSetDescription const &psetDescription)
void l1t::BXVectorInputProducer::produce ( Event ,
EventSetup const &   
)
overrideprivatevirtual

Implements edm::EDProducer.

Definition at line 183 of file BXVectorInputProducer.cc.

References l1GtPatternGenerator_cfi::bx, simCaloStage2Layer1Digis_cfi::bxFirst, simCaloStage2Layer1Digis_cfi::bxLast, unpackData-CaloStage1::egToken, edm::Event::getByToken(), HLT_2018_cff::inputJets, calomuons_cfi::inputMuons, createfilelist::int, metsig::jet, singleTopDQM_cfi::jets, unpackData-CaloStage1::jetToken, LogDebug, LogTrace, eostools::move(), amptDefaultParameters_cff::mu, PDWG_BPHSkim_cff::muons, edm::Event::put(), metsig::tau, Tau3MuMonitor_cff::taus, and unpackData-CaloStage1::tauToken.

183  {
184  eventCnt_++;
185 
186  LogDebug("l1t|Global") << "BXVectorInputProducer::produce function called...\n";
187 
188  // Setup vectors
189  std::vector<l1t::Muon> muonVec;
190  std::vector<l1t::EGamma> egammaVec;
191  std::vector<l1t::Tau> tauVec;
192  std::vector<l1t::Jet> jetVec;
193  std::vector<l1t::EtSum> etsumVec;
194 
195  // Set the range of BX....TO DO...move to Params or determine from param set.
196  int bxFirst = bxFirst_;
197  int bxLast = bxLast_;
198 
199  //outputs
200  std::unique_ptr<l1t::EGammaBxCollection> egammas(new l1t::EGammaBxCollection(0, bxFirst, bxLast));
201  std::unique_ptr<l1t::MuonBxCollection> muons(new l1t::MuonBxCollection(0, bxFirst, bxLast));
202  std::unique_ptr<l1t::TauBxCollection> taus(new l1t::TauBxCollection(0, bxFirst, bxLast));
203  std::unique_ptr<l1t::JetBxCollection> jets(new l1t::JetBxCollection(0, bxFirst, bxLast));
204  std::unique_ptr<l1t::EtSumBxCollection> etsums(new l1t::EtSumBxCollection(0, bxFirst, bxLast));
205 
206  std::vector<int> mu_cands_index;
207  std::vector<int> eg_cands_index;
208  std::vector<int> tau_cands_index;
209 
210  // Bx to use...grab only bx=0 for now
211  int bx = 0;
212 
213  // Make sure that you can get input EG
214  Handle<BXVector<l1t::EGamma>> inputEgammas;
215  if (iEvent.getByToken(egToken, inputEgammas)) {
216  for (std::vector<l1t::EGamma>::const_iterator eg = inputEgammas->begin(bx); eg != inputEgammas->end(bx); ++eg) {
217  if (eg->hwPt() > egEtThreshold_ && egammaVec.size() < maxNumEGCands_) {
218  egammaVec.push_back((*eg));
219  }
220  }
221  } else {
222  LogTrace("l1t|Global") << ">>> input EG collection not found!" << std::endl;
223  }
224 
225  // Make sure that you can get input Muons
227  if (iEvent.getByToken(muToken, inputMuons)) {
228  for (std::vector<l1t::Muon>::const_iterator mu = inputMuons->begin(bx); mu != inputMuons->end(bx); ++mu) {
229  if (mu->hwPt() > muEtThreshold_ && muonVec.size() < maxNumMuCands_) {
230  muonVec.push_back((*mu));
231  }
232  }
233  } else {
234  LogTrace("l1t|Global") << ">>> input Mu collection not found!" << std::endl;
235  }
236 
237  // Make sure that you can get input Tau
238  Handle<BXVector<l1t::Tau>> inputTaus;
239  if (iEvent.getByToken(tauToken, inputTaus)) {
240  for (std::vector<l1t::Tau>::const_iterator tau = inputTaus->begin(bx); tau != inputTaus->end(bx); ++tau) {
241  if (tau->hwPt() > tauEtThreshold_ && tauVec.size() < maxNumTauCands_) {
242  tauVec.push_back((*tau));
243  }
244  }
245  } else {
246  LogTrace("l1t|Global") << ">>> input tau collection not found!" << std::endl;
247  }
248 
249  // Make sure that you can get input jet
251  if (iEvent.getByToken(jetToken, inputJets)) {
252  for (std::vector<l1t::Jet>::const_iterator jet = inputJets->begin(bx); jet != inputJets->end(bx); ++jet) {
253  if (jet->hwPt() > jetEtThreshold_ && jetVec.size() < maxNumJetCands_) {
254  jetVec.push_back((*jet));
255  }
256  }
257  } else {
258  LogTrace("l1t|Global") << ">>> input jet collection not found!" << std::endl;
259  }
260 
261  // Make sure that you can get input etsum
262  Handle<BXVector<l1t::EtSum>> inputEtsums;
263  if (iEvent.getByToken(etsumToken, inputEtsums)) {
264  for (std::vector<l1t::EtSum>::const_iterator etsum = inputEtsums->begin(bx); etsum != inputEtsums->end(bx);
265  ++etsum) {
266  etsumVec.push_back((*etsum));
267  }
268  } else {
269  LogTrace("l1t|Global") << ">>> input etsum collection not found!" << std::endl;
270  }
271 
272  // Insert all the bx into the L1 Collections
273  LogTrace("l1t|Global") << "Event " << eventCnt_ << " EmptyBxEvt " << emptyBxEvt_ << " emptyBxTrailer "
274  << emptyBxTrailer_ << " diff " << (emptyBxEvt_ - eventCnt_) << std::endl;
275 
276  // Fill Muons
277  for (int iMu = 0; iMu < int(muonVec_bxm2.size()); iMu++) {
278  muons->push_back(-2, muonVec_bxm2[iMu]);
279  }
280  for (int iMu = 0; iMu < int(muonVec_bxm1.size()); iMu++) {
281  muons->push_back(-1, muonVec_bxm1[iMu]);
282  }
283  for (int iMu = 0; iMu < int(muonVec_bx0.size()); iMu++) {
284  muons->push_back(0, muonVec_bx0[iMu]);
285  }
286  for (int iMu = 0; iMu < int(muonVec_bxp1.size()); iMu++) {
287  muons->push_back(1, muonVec_bxp1[iMu]);
288  }
290  for (int iMu = 0; iMu < int(muonVec.size()); iMu++) {
291  muons->push_back(2, muonVec[iMu]);
292  }
293  } else {
294  // this event is part of empty trailer...clear out data
295  muonVec.clear();
296  }
297 
298  // Fill Egammas
299  for (int iEG = 0; iEG < int(egammaVec_bxm2.size()); iEG++) {
300  egammas->push_back(-2, egammaVec_bxm2[iEG]);
301  }
302  for (int iEG = 0; iEG < int(egammaVec_bxm1.size()); iEG++) {
303  egammas->push_back(-1, egammaVec_bxm1[iEG]);
304  }
305  for (int iEG = 0; iEG < int(egammaVec_bx0.size()); iEG++) {
306  egammas->push_back(0, egammaVec_bx0[iEG]);
307  }
308  for (int iEG = 0; iEG < int(egammaVec_bxp1.size()); iEG++) {
309  egammas->push_back(1, egammaVec_bxp1[iEG]);
310  }
312  for (int iEG = 0; iEG < int(egammaVec.size()); iEG++) {
313  egammas->push_back(2, egammaVec[iEG]);
314  }
315  } else {
316  // this event is part of empty trailer...clear out data
317  egammaVec.clear();
318  }
319 
320  // Fill Taus
321  for (int iTau = 0; iTau < int(tauVec_bxm2.size()); iTau++) {
322  taus->push_back(-2, tauVec_bxm2[iTau]);
323  }
324  for (int iTau = 0; iTau < int(tauVec_bxm1.size()); iTau++) {
325  taus->push_back(-1, tauVec_bxm1[iTau]);
326  }
327  for (int iTau = 0; iTau < int(tauVec_bx0.size()); iTau++) {
328  taus->push_back(0, tauVec_bx0[iTau]);
329  }
330  for (int iTau = 0; iTau < int(tauVec_bxp1.size()); iTau++) {
331  taus->push_back(1, tauVec_bxp1[iTau]);
332  }
334  for (int iTau = 0; iTau < int(tauVec.size()); iTau++) {
335  taus->push_back(2, tauVec[iTau]);
336  }
337  } else {
338  // this event is part of empty trailer...clear out data
339  tauVec.clear();
340  }
341 
342  // Fill Jets
343  for (int iJet = 0; iJet < int(jetVec_bxm2.size()); iJet++) {
344  jets->push_back(-2, jetVec_bxm2[iJet]);
345  }
346  for (int iJet = 0; iJet < int(jetVec_bxm1.size()); iJet++) {
347  jets->push_back(-1, jetVec_bxm1[iJet]);
348  }
349  for (int iJet = 0; iJet < int(jetVec_bx0.size()); iJet++) {
350  jets->push_back(0, jetVec_bx0[iJet]);
351  }
352  for (int iJet = 0; iJet < int(jetVec_bxp1.size()); iJet++) {
353  jets->push_back(1, jetVec_bxp1[iJet]);
354  }
356  for (int iJet = 0; iJet < int(jetVec.size()); iJet++) {
357  jets->push_back(2, jetVec[iJet]);
358  }
359  } else {
360  // this event is part of empty trailer...clear out data
361  jetVec.clear();
362  }
363 
364  // Fill Etsums
365  for (int iETsum = 0; iETsum < int(etsumVec_bxm2.size()); iETsum++) {
366  etsums->push_back(-2, etsumVec_bxm2[iETsum]);
367  }
368  for (int iETsum = 0; iETsum < int(etsumVec_bxm1.size()); iETsum++) {
369  etsums->push_back(-1, etsumVec_bxm1[iETsum]);
370  }
371  for (int iETsum = 0; iETsum < int(etsumVec_bx0.size()); iETsum++) {
372  etsums->push_back(0, etsumVec_bx0[iETsum]);
373  }
374  for (int iETsum = 0; iETsum < int(etsumVec_bxp1.size()); iETsum++) {
375  etsums->push_back(1, etsumVec_bxp1[iETsum]);
376  }
378  for (int iETsum = 0; iETsum < int(etsumVec.size()); iETsum++) {
379  etsums->push_back(2, etsumVec[iETsum]);
380  }
381  } else {
382  // this event is part of empty trailer...clear out data
383  etsumVec.clear();
384  }
385 
386  iEvent.put(std::move(egammas));
387  iEvent.put(std::move(muons));
388  iEvent.put(std::move(taus));
389  iEvent.put(std::move(jets));
390  iEvent.put(std::move(etsums));
391 
392  // Now shift the bx data by one to prepare for next event.
398 
404 
410 
411  muonVec_bxp1 = muonVec;
412  egammaVec_bxp1 = egammaVec;
413  tauVec_bxp1 = tauVec;
414  jetVec_bxp1 = jetVec;
415  etsumVec_bxp1 = etsumVec;
416  }
#define LogDebug(id)
std::vector< l1t::Jet > jetVec_bxp1
std::vector< l1t::Muon > muonVec_bx0
std::vector< l1t::EGamma > egammaVec_bxm1
std::vector< l1t::EtSum > etsumVec_bxm2
std::vector< l1t::EGamma > egammaVec_bxp1
std::vector< l1t::Jet > jetVec_bx0
std::vector< l1t::EGamma > egammaVec_bxm2
std::vector< l1t::Jet > jetVec_bxm2
std::vector< l1t::Tau > tauVec_bxm2
std::vector< l1t::EtSum > etsumVec_bx0
std::vector< l1t::Jet > jetVec_bxm1
int iEvent
Definition: GenABIO.cc:224
std::vector< l1t::Tau > tauVec_bxm1
std::vector< l1t::EtSum > etsumVec_bxm1
std::vector< l1t::Muon > muonVec_bxp1
std::vector< l1t::Tau > tauVec_bx0
std::vector< l1t::EGamma > egammaVec_bx0
#define LogTrace(id)
std::vector< l1t::EtSum > etsumVec_bxp1
std::vector< l1t::Muon > muonVec_bxm1
std::vector< l1t::Muon > muonVec_bxm2
std::vector< l1t::Tau > tauVec_bxp1
def move(src, dest)
Definition: eostools.py:511

Member Data Documentation

int l1t::BXVectorInputProducer::bxFirst_
private

Definition at line 84 of file BXVectorInputProducer.cc.

int l1t::BXVectorInputProducer::bxLast_
private

Definition at line 85 of file BXVectorInputProducer.cc.

int l1t::BXVectorInputProducer::counter_
private

Definition at line 109 of file BXVectorInputProducer.cc.

std::vector<l1t::EGamma> l1t::BXVectorInputProducer::egammaVec_bx0
private

Definition at line 118 of file BXVectorInputProducer.cc.

std::vector<l1t::EGamma> l1t::BXVectorInputProducer::egammaVec_bxm1
private

Definition at line 117 of file BXVectorInputProducer.cc.

std::vector<l1t::EGamma> l1t::BXVectorInputProducer::egammaVec_bxm2
private

Definition at line 116 of file BXVectorInputProducer.cc.

std::vector<l1t::EGamma> l1t::BXVectorInputProducer::egammaVec_bxp1
private

Definition at line 119 of file BXVectorInputProducer.cc.

double l1t::BXVectorInputProducer::egEtThreshold_
private

Definition at line 94 of file BXVectorInputProducer.cc.

edm::EDGetToken l1t::BXVectorInputProducer::egToken
private

Definition at line 103 of file BXVectorInputProducer.cc.

int l1t::BXVectorInputProducer::emptyBxEvt_
private

Definition at line 99 of file BXVectorInputProducer.cc.

int l1t::BXVectorInputProducer::emptyBxTrailer_
private

Definition at line 98 of file BXVectorInputProducer.cc.

edm::EDGetToken l1t::BXVectorInputProducer::etsumToken
private

Definition at line 107 of file BXVectorInputProducer.cc.

std::vector<l1t::EtSum> l1t::BXVectorInputProducer::etsumVec_bx0
private

Definition at line 133 of file BXVectorInputProducer.cc.

std::vector<l1t::EtSum> l1t::BXVectorInputProducer::etsumVec_bxm1
private

Definition at line 132 of file BXVectorInputProducer.cc.

std::vector<l1t::EtSum> l1t::BXVectorInputProducer::etsumVec_bxm2
private

Definition at line 131 of file BXVectorInputProducer.cc.

std::vector<l1t::EtSum> l1t::BXVectorInputProducer::etsumVec_bxp1
private

Definition at line 134 of file BXVectorInputProducer.cc.

int l1t::BXVectorInputProducer::eventCnt_
private

Definition at line 100 of file BXVectorInputProducer.cc.

double l1t::BXVectorInputProducer::jetEtThreshold_
private

Definition at line 92 of file BXVectorInputProducer.cc.

edm::EDGetToken l1t::BXVectorInputProducer::jetToken
private

Definition at line 106 of file BXVectorInputProducer.cc.

std::vector<l1t::Jet> l1t::BXVectorInputProducer::jetVec_bx0
private

Definition at line 128 of file BXVectorInputProducer.cc.

std::vector<l1t::Jet> l1t::BXVectorInputProducer::jetVec_bxm1
private

Definition at line 127 of file BXVectorInputProducer.cc.

std::vector<l1t::Jet> l1t::BXVectorInputProducer::jetVec_bxm2
private

Definition at line 126 of file BXVectorInputProducer.cc.

std::vector<l1t::Jet> l1t::BXVectorInputProducer::jetVec_bxp1
private

Definition at line 129 of file BXVectorInputProducer.cc.

unsigned long long l1t::BXVectorInputProducer::m_paramsCacheId
private

Definition at line 78 of file BXVectorInputProducer.cc.

unsigned int l1t::BXVectorInputProducer::maxNumEGCands_
private

Definition at line 89 of file BXVectorInputProducer.cc.

unsigned int l1t::BXVectorInputProducer::maxNumJetCands_
private

Definition at line 88 of file BXVectorInputProducer.cc.

unsigned int l1t::BXVectorInputProducer::maxNumMuCands_
private

Definition at line 87 of file BXVectorInputProducer.cc.

unsigned int l1t::BXVectorInputProducer::maxNumTauCands_
private

Definition at line 90 of file BXVectorInputProducer.cc.

double l1t::BXVectorInputProducer::muEtThreshold_
private

Definition at line 95 of file BXVectorInputProducer.cc.

std::vector<l1t::Muon> l1t::BXVectorInputProducer::muonVec_bx0
private

Definition at line 113 of file BXVectorInputProducer.cc.

std::vector<l1t::Muon> l1t::BXVectorInputProducer::muonVec_bxm1
private

Definition at line 112 of file BXVectorInputProducer.cc.

std::vector<l1t::Muon> l1t::BXVectorInputProducer::muonVec_bxm2
private

Definition at line 111 of file BXVectorInputProducer.cc.

std::vector<l1t::Muon> l1t::BXVectorInputProducer::muonVec_bxp1
private

Definition at line 114 of file BXVectorInputProducer.cc.

edm::EDGetToken l1t::BXVectorInputProducer::muToken
private

Definition at line 104 of file BXVectorInputProducer.cc.

double l1t::BXVectorInputProducer::tauEtThreshold_
private

Definition at line 93 of file BXVectorInputProducer.cc.

edm::EDGetToken l1t::BXVectorInputProducer::tauToken
private

Definition at line 105 of file BXVectorInputProducer.cc.

std::vector<l1t::Tau> l1t::BXVectorInputProducer::tauVec_bx0
private

Definition at line 123 of file BXVectorInputProducer.cc.

std::vector<l1t::Tau> l1t::BXVectorInputProducer::tauVec_bxm1
private

Definition at line 122 of file BXVectorInputProducer.cc.

std::vector<l1t::Tau> l1t::BXVectorInputProducer::tauVec_bxm2
private

Definition at line 121 of file BXVectorInputProducer.cc.

std::vector<l1t::Tau> l1t::BXVectorInputProducer::tauVec_bxp1
private

Definition at line 124 of file BXVectorInputProducer.cc.