CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes
l1t::L1TGlobalAnalyzer Class Reference
Inheritance diagram for l1t::L1TGlobalAnalyzer:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

 L1TGlobalAnalyzer (const edm::ParameterSet &)
 
 ~L1TGlobalAnalyzer () override
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () 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
 
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)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

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

Private Types

enum  ObjectType {
  MU =0x1, EG =0x2, Tau =0x3, Jet =0x4,
  Sum =0x5, DmxEG =0x6, DmxTau =0x7, DmxJet =0x8,
  DmxSum =0x9, GtAlg =0xA, EmulGtAlg =0xB, gMU = 0xC
}
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void beginJob () override
 
void endJob () override
 

Private Attributes

TFileDirectory algDir_
 
std::map< ObjectType, TFileDirectorydirs_
 
TFileDirectory dmxVGtDir_
 
bool doHistos_
 
bool doText_
 
TFileDirectory evtDispDir_
 
TH1F * hAlgoBits_
 
TH2F * hAlgoBitsEmulDxVsHw_
 
TH2F * hAlgoBitsEmulGtVsHw_
 
std::map< ObjectType, TH1F * > hbx_
 
TH2F * hDmxVsGTEGEt_
 
TH2F * hDmxVsGTEGEta_
 
TH2F * hDmxVsGTEGPhi_
 
TH2F * hDmxVsGTJetEt_
 
TH2F * hDmxVsGTJetEta_
 
TH2F * hDmxVsGTJetPhi_
 
TH2F * hDmxVsGTSumEt_ETM_
 
TH2F * hDmxVsGTSumEt_ETMHF_
 
TH2F * hDmxVsGTSumEt_ETT_
 
TH2F * hDmxVsGTSumEt_ETTem_
 
TH2F * hDmxVsGTSumEt_HFM0_
 
TH2F * hDmxVsGTSumEt_HFM1_
 
TH2F * hDmxVsGTSumEt_HFP0_
 
TH2F * hDmxVsGTSumEt_HFP1_
 
TH2F * hDmxVsGTSumEt_HTM_
 
TH2F * hDmxVsGTSumEt_HTT_
 
TH2F * hDmxVsGTSumPhi_ETM_
 
TH2F * hDmxVsGTSumPhi_ETMHF_
 
TH2F * hDmxVsGTSumPhi_HTM_
 
TH2F * hDmxVsGTTauEt_
 
TH2F * hDmxVsGTTauEta_
 
TH2F * hDmxVsGTTauPhi_
 
TH1F * hEmulDxAlgoBits_
 
TH1F * hEmulGtAlgoBits_
 
std::map< ObjectType, TH1F * > het_
 
std::map< ObjectType, TH1F * > heta_
 
std::map< ObjectType, TH2F * > hetaphi_
 
TH2F * hGmtVsGTMUEt_
 
TH2F * hGmtVsGTMUEta_
 
TH2F * hGmtVsGTMUPhi_
 
std::map< ObjectType, TH1F * > hphi_
 
edm::EDGetToken m_dmxEGToken
 
edm::EDGetToken m_dmxJetToken
 
edm::EDGetToken m_dmxSumToken
 
edm::EDGetToken m_dmxTauToken
 
bool m_doDmxEGs
 
bool m_doDmxJets
 
bool m_doDmxSums
 
bool m_doDmxTaus
 
bool m_doEGs
 
bool m_doEmulDxAlg
 
bool m_doEmulGtAlg
 
bool m_dogMUs
 
bool m_doGtAlg
 
bool m_doJets
 
bool m_doMUs
 
bool m_doSums
 
bool m_doTaus
 
edm::EDGetToken m_egToken
 
edm::EDGetToken m_emulDxAlgToken
 
edm::EDGetToken m_emulGtAlgToken
 
edm::EDGetToken m_gmuToken
 
edm::EDGetToken m_gtAlgToken
 
edm::EDGetToken m_jetToken
 
edm::EDGetToken m_muToken
 
edm::EDGetToken m_sumToken
 
edm::EDGetToken m_tauToken
 
std::vector< ObjectTypetypes_
 
std::vector< std::string > typeStr_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- 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 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

Definition at line 54 of file L1TGlobalAnalyzer.cc.

Member Enumeration Documentation

Enumerator
MU 
EG 
Tau 
Jet 
Sum 
DmxEG 
DmxTau 
DmxJet 
DmxSum 
GtAlg 
EmulGtAlg 
gMU 

Definition at line 106 of file L1TGlobalAnalyzer.cc.

Constructor & Destructor Documentation

L1TGlobalAnalyzer::L1TGlobalAnalyzer ( const edm::ParameterSet iConfig)
explicit

Definition at line 178 of file L1TGlobalAnalyzer.cc.

References DmxEG, DmxJet, DmxSum, DmxTau, EG, edm::ParameterSet::getParameter(), gMU, mhtProducer_cfi::jetTag, m_dmxEGToken, m_dmxJetToken, m_dmxSumToken, m_dmxTauToken, m_doDmxEGs, m_doDmxJets, m_doDmxSums, m_doDmxTaus, m_doEGs, m_doEmulDxAlg, m_doEmulGtAlg, m_dogMUs, m_doGtAlg, m_doJets, m_doMUs, m_doSums, m_doTaus, m_egToken, m_emulDxAlgToken, m_emulGtAlgToken, m_gmuToken, m_gtAlgToken, m_jetToken, m_muToken, m_sumToken, m_tauToken, MU, Sum, mhtProducer_cfi::tauTag, types_, and typeStr_.

178  :
179  doText_(iConfig.getUntrackedParameter<bool>("doText", true)),
180  doHistos_(iConfig.getUntrackedParameter<bool>("doHistos", true))
181 {
182  //now do what ever initialization is needed
183 
184  // register what you consume and keep token for later access:
185  edm::InputTag nullTag("None");
186 
187 
188  edm::InputTag gmuTag = iConfig.getParameter<edm::InputTag>("gmuToken");
189  m_gmuToken = consumes<l1t::MuonBxCollection>(gmuTag);
190  m_dogMUs = !(gmuTag==nullTag);
191 
192  edm::InputTag dmxEGTag = iConfig.getParameter<edm::InputTag>("dmxEGToken");
193  m_dmxEGToken = consumes<l1t::EGammaBxCollection>(dmxEGTag);
194  m_doDmxEGs = !(dmxEGTag==nullTag);
195 
196  edm::InputTag dmxTauTag = iConfig.getParameter<edm::InputTag>("dmxTauToken");
197  m_dmxTauToken = consumes<l1t::TauBxCollection>(dmxTauTag);
198  m_doDmxTaus = !(dmxTauTag==nullTag);
199 
200  edm::InputTag dmxJetTag = iConfig.getParameter<edm::InputTag>("dmxJetToken");
201  m_dmxJetToken = consumes<l1t::JetBxCollection>(dmxJetTag);
202  m_doDmxJets = !(dmxJetTag==nullTag);
203 
204  edm::InputTag dmxSumTag = iConfig.getParameter<edm::InputTag>("dmxEtSumToken");
205  m_dmxSumToken = consumes<l1t::EtSumBxCollection>(dmxSumTag);
206  m_doDmxSums = !(dmxSumTag==nullTag);
207 
208  edm::InputTag muTag = iConfig.getParameter<edm::InputTag>("muToken");
209  m_muToken = consumes<l1t::MuonBxCollection>(muTag);
210  m_doMUs = !(muTag==nullTag);
211 
212  edm::InputTag egTag = iConfig.getParameter<edm::InputTag>("egToken");
213  m_egToken = consumes<l1t::EGammaBxCollection>(egTag);
214  m_doEGs = !(egTag==nullTag);
215 
216  edm::InputTag tauTag = iConfig.getParameter<edm::InputTag>("tauToken");
217  m_tauToken = consumes<l1t::TauBxCollection>(tauTag);
218  m_doTaus = !(tauTag==nullTag);
219 
220  edm::InputTag jetTag = iConfig.getParameter<edm::InputTag>("jetToken");
221  m_jetToken = consumes<l1t::JetBxCollection>(jetTag);
222  m_doJets = !(jetTag==nullTag);
223 
224  edm::InputTag sumTag = iConfig.getParameter<edm::InputTag>("etSumToken");
225  m_sumToken = consumes<l1t::EtSumBxCollection>(sumTag);
226  m_doSums = !(sumTag==nullTag);
227 
228  edm::InputTag gtAlgTag = iConfig.getParameter<edm::InputTag>("gtAlgToken");
229  m_gtAlgToken = consumes<GlobalAlgBlkBxCollection>(gtAlgTag);
230  m_doGtAlg = !(gtAlgTag==nullTag);
231 
232  edm::InputTag emulGtAlgTag = iConfig.getParameter<edm::InputTag>("emulGtAlgToken");
233  m_emulGtAlgToken = consumes<GlobalAlgBlkBxCollection>(emulGtAlgTag);
234  m_doEmulGtAlg = !(emulGtAlgTag==nullTag);
235 
236  edm::InputTag emulDxAlgTag = iConfig.getParameter<edm::InputTag>("emulDxAlgToken");
237  m_emulDxAlgToken = consumes<GlobalAlgBlkBxCollection>(emulDxAlgTag);
238  m_doEmulDxAlg = !(emulDxAlgTag==nullTag);
239 
240  types_.push_back( gMU );
241  types_.push_back( DmxEG );
242  types_.push_back( DmxTau );
243  types_.push_back( DmxJet );
244  types_.push_back( DmxSum );
245  types_.push_back( MU );
246  types_.push_back( EG );
247  types_.push_back( Tau );
248  types_.push_back( Jet );
249  types_.push_back( Sum );
250 
251  typeStr_.push_back( "gmtmu" );
252  typeStr_.push_back( "dmxeg" );
253  typeStr_.push_back( "dmxtau" );
254  typeStr_.push_back( "dmxjet" );
255  typeStr_.push_back( "dmxsum" );
256  typeStr_.push_back( "mu" );
257  typeStr_.push_back( "eg" );
258  typeStr_.push_back( "tau" );
259  typeStr_.push_back( "jet" );
260  typeStr_.push_back( "sum" );
261 
262 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
edm::EDGetToken m_emulDxAlgToken
edm::EDGetToken m_dmxEGToken
edm::EDGetToken m_emulGtAlgToken
Definition: Jet.py:1
edm::EDGetToken m_gmuToken
edm::EDGetToken m_dmxTauToken
edm::EDGetToken m_gtAlgToken
edm::EDGetToken m_sumToken
std::vector< std::string > typeStr_
Definition: Tau.py:1
edm::EDGetToken m_dmxSumToken
edm::EDGetToken m_tauToken
edm::EDGetToken m_jetToken
edm::EDGetToken m_dmxJetToken
std::vector< ObjectType > types_
L1TGlobalAnalyzer::~L1TGlobalAnalyzer ( )
override

Definition at line 265 of file L1TGlobalAnalyzer.cc.

266 {
267 
268  // do anything here that needs to be done at desctruction time
269  // (e.g. close files, deallocate resources etc.)
270 
271 }

Member Function Documentation

void L1TGlobalAnalyzer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivate

Definition at line 280 of file L1TGlobalAnalyzer.cc.

References DmxEG, DmxJet, DmxSum, DmxTau, doText_, EG, edm::Event::getByToken(), gMU, hAlgoBits_, hAlgoBitsEmulDxVsHw_, hAlgoBitsEmulGtVsHw_, hbx_, hDmxVsGTEGEt_, hDmxVsGTEGEta_, hDmxVsGTEGPhi_, hDmxVsGTJetEt_, hDmxVsGTJetEta_, hDmxVsGTJetPhi_, hDmxVsGTSumEt_ETM_, hDmxVsGTSumEt_ETMHF_, hDmxVsGTSumEt_ETT_, hDmxVsGTSumEt_ETTem_, hDmxVsGTSumEt_HFM0_, hDmxVsGTSumEt_HFM1_, hDmxVsGTSumEt_HFP0_, hDmxVsGTSumEt_HFP1_, hDmxVsGTSumEt_HTM_, hDmxVsGTSumEt_HTT_, hDmxVsGTSumPhi_ETM_, hDmxVsGTSumPhi_ETMHF_, hDmxVsGTSumPhi_HTM_, hDmxVsGTTauEt_, hDmxVsGTTauEta_, hDmxVsGTTauPhi_, hEmulDxAlgoBits_, hEmulGtAlgoBits_, het_, heta_, hetaphi_, hGmtVsGTMUEt_, hGmtVsGTMUEta_, hGmtVsGTMUPhi_, hphi_, fwrapper::jets, L1Analysis::kMissingEt, L1Analysis::kMissingHt, L1Analysis::kTotalEt, L1Analysis::kTotalHt, m_dmxEGToken, m_dmxJetToken, m_dmxSumToken, m_dmxTauToken, m_doDmxEGs, m_doDmxJets, m_doDmxSums, m_doDmxTaus, m_doEGs, m_doEmulDxAlg, m_doEmulGtAlg, m_dogMUs, m_doGtAlg, m_doJets, m_doMUs, m_doSums, m_doTaus, m_egToken, m_emulDxAlgToken, m_emulGtAlgToken, m_gmuToken, m_gtAlgToken, m_jetToken, m_muToken, m_sumToken, m_tauToken, MU, nano_cff::muons, Sum, nano_cff::taus, and RecoTauValidation_cfi::text.

281 {
282  using namespace edm;
283 
284  std::stringstream text;
285 
286  // get gmt Muons
287  if (m_dogMUs) {
289  iEvent.getByToken(m_gmuToken,gmuons);
290 
291  for ( int ibx=gmuons->getFirstBX(); ibx<=gmuons->getLastBX(); ++ibx) {
292 
293  for ( auto itr = gmuons->begin(ibx); itr != gmuons->end(ibx); ++itr ) {
294  hbx_.at(gMU)->Fill( ibx );
295  het_.at(gMU)->Fill( itr->hwPt() );
296  heta_.at(gMU)->Fill( itr->hwEtaAtVtx() );
297  hphi_.at(gMU)->Fill( itr->hwPhiAtVtx() );
298  hetaphi_.at(gMU)->Fill( itr->hwEtaAtVtx(), itr->hwPhiAtVtx(), itr->hwPt() );
299 
300  text << "Muon : " << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEtaAtVtx() << " iphi=" << itr->hwPhiAtVtx() << std::endl;
301 
302  }
303 
304  }
305 
306  }
307 
308 
309  // get EG
310  if (m_doDmxEGs) {
312  iEvent.getByToken(m_dmxEGToken,dmxegs);
313 
314  for ( int ibx=dmxegs->getFirstBX(); ibx<=dmxegs->getLastBX(); ++ibx) {
315 
316  for ( auto itr = dmxegs->begin(ibx); itr != dmxegs->end(ibx); ++itr ) {
317  hbx_.at(DmxEG)->Fill( ibx );
318  het_.at(DmxEG)->Fill( itr->hwPt() );
319  heta_.at(DmxEG)->Fill( itr->hwEta() );
320  hphi_.at(DmxEG)->Fill( itr->hwPhi() );
321  hetaphi_.at(DmxEG)->Fill( itr->hwEta(), itr->hwPhi(), itr->hwPt() );
322 
323  text << "Dmx EG : " << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEta() << " iphi=" << itr->hwPhi() << std::endl;
324 
325 
326 
327  }
328 
329  }
330 
331  }
332 
333  // get tau
334  if (m_doDmxTaus) {
335  Handle< BXVector<l1t::Tau> > dmxtaus;
336  iEvent.getByToken(m_dmxTauToken,dmxtaus);
337 
338  for ( int ibx=dmxtaus->getFirstBX(); ibx<=dmxtaus->getLastBX(); ++ibx) {
339 
340  for ( auto itr = dmxtaus->begin(ibx); itr != dmxtaus->end(ibx); ++itr ) {
341  hbx_.at(DmxTau)->Fill( ibx );
342  het_.at(DmxTau)->Fill( itr->hwPt() );
343  heta_.at(DmxTau)->Fill( itr->hwEta() );
344  hphi_.at(DmxTau)->Fill( itr->hwPhi() );
345  hetaphi_.at(DmxTau)->Fill( itr->hwEta(), itr->hwPhi(), itr->hwPt() );
346 
347  text << "Dmx Tau : " << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEta() << " iphi=" << itr->hwPhi() << std::endl;
348 
349  }
350 
351  }
352 
353  }
354 
355  // get jet
356  if (m_doDmxJets) {
357  Handle< BXVector<l1t::Jet> > dmxjets;
358  iEvent.getByToken(m_dmxJetToken,dmxjets);
359 
360  for ( int ibx=dmxjets->getFirstBX(); ibx<=dmxjets->getLastBX(); ++ibx) {
361 
362  for ( auto itr = dmxjets->begin(ibx); itr != dmxjets->end(ibx); ++itr ) {
363  hbx_.at(DmxJet)->Fill( ibx );
364  het_.at(DmxJet)->Fill( itr->hwPt() );
365  heta_.at(DmxJet)->Fill( itr->hwEta() );
366  hphi_.at(DmxJet)->Fill( itr->hwPhi() );
367  hetaphi_.at(DmxJet)->Fill( itr->hwEta(), itr->hwPhi(), itr->hwPt() );
368 
369  text << "Dmx Jet : " << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEta() << " iphi=" << itr->hwPhi() << std::endl;
370 
371  }
372 
373  }
374 
375  }
376 
377  // get sums
378  if (m_doDmxSums) {
380  iEvent.getByToken(m_dmxSumToken,dmxsums);
381 
382  for ( int ibx=dmxsums->getFirstBX(); ibx<=dmxsums->getLastBX(); ++ibx) {
383 
384  for ( auto itr = dmxsums->begin(ibx); itr != dmxsums->end(ibx); ++itr ) {
385  hbx_.at(DmxSum)->Fill( ibx );
386  het_.at(DmxSum)->Fill( itr->hwPt() );
387  heta_.at(DmxSum)->Fill( itr->hwEta() );
388  hphi_.at(DmxSum)->Fill( itr->hwPhi() );
389  hetaphi_.at(DmxSum)->Fill( itr->hwEta(), itr->hwPhi(), itr->hwPt() );
390 
391  text << "Dmx Sum : " << " type=" << itr->getType() << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEta() << " iphi=" << itr->hwPhi() << std::endl;
392 
393  }
394 
395  }
396 
397  }
398 
399 
400  // get Muons
401  if (m_doMUs) {
403  iEvent.getByToken(m_muToken,muons);
404 
405  for ( int ibx=muons->getFirstBX(); ibx<=muons->getLastBX(); ++ibx) {
406 
407  for ( auto itr = muons->begin(ibx); itr != muons->end(ibx); ++itr ) {
408  hbx_.at(MU)->Fill( ibx );
409  het_.at(MU)->Fill( itr->hwPt() );
410  heta_.at(MU)->Fill( itr->hwEtaAtVtx() );
411  hphi_.at(MU)->Fill( itr->hwPhiAtVtx() );
412  hetaphi_.at(MU)->Fill( itr->hwEtaAtVtx(), itr->hwPhiAtVtx(), itr->hwPt() );
413 
414  text << "Muon : " << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEtaAtVtx() << " iphi=" << itr->hwPhiAtVtx() << std::endl;
415 
416  }
417 
418  }
419 
420  }
421 
422 
423 
424  // get EG
425  if (m_doEGs) {
427  iEvent.getByToken(m_egToken,egs);
428 
429  for ( int ibx=egs->getFirstBX(); ibx<=egs->getLastBX(); ++ibx) {
430 
431  for ( auto itr = egs->begin(ibx); itr != egs->end(ibx); ++itr ) {
432  hbx_.at(EG)->Fill( ibx );
433  het_.at(EG)->Fill( itr->hwPt() );
434  heta_.at(EG)->Fill( itr->hwEta() );
435  hphi_.at(EG)->Fill( itr->hwPhi() );
436  hetaphi_.at(EG)->Fill( itr->hwEta(), itr->hwPhi(), itr->hwPt() );
437 
438  text << "EG : " << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEta() << " iphi=" << itr->hwPhi() << std::endl;
439 
440  }
441 
442  }
443 
444  }
445 
446  // get tau
447  if (m_doTaus) {
449  iEvent.getByToken(m_tauToken,taus);
450 
451  for ( int ibx=taus->getFirstBX(); ibx<=taus->getLastBX(); ++ibx) {
452 
453  for ( auto itr = taus->begin(ibx); itr != taus->end(ibx); ++itr ) {
454  hbx_.at(Tau)->Fill( ibx );
455  het_.at(Tau)->Fill( itr->hwPt() );
456  heta_.at(Tau)->Fill( itr->hwEta() );
457  hphi_.at(Tau)->Fill( itr->hwPhi() );
458  hetaphi_.at(Tau)->Fill( itr->hwEta(), itr->hwPhi(), itr->hwPt() );
459 
460  text << "Tau : " << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEta() << " iphi=" << itr->hwPhi() << std::endl;
461 
462  }
463 
464  }
465 
466  }
467 
468  // get jet
469  if (m_doJets) {
471  iEvent.getByToken(m_jetToken,jets);
472 
473  for ( int ibx=jets->getFirstBX(); ibx<=jets->getLastBX(); ++ibx) {
474 
475  for ( auto itr = jets->begin(ibx); itr != jets->end(ibx); ++itr ) {
476  hbx_.at(Jet)->Fill( ibx );
477  het_.at(Jet)->Fill( itr->hwPt() );
478  heta_.at(Jet)->Fill( itr->hwEta() );
479  hphi_.at(Jet)->Fill( itr->hwPhi() );
480  hetaphi_.at(Jet)->Fill( itr->hwEta(), itr->hwPhi(), itr->hwPt() );
481 
482  text << "Jet : " << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEta() << " iphi=" << itr->hwPhi() << std::endl;
483 
484  }
485 
486  }
487 
488  }
489 
490  // get sums
491  if (m_doSums) {
493  iEvent.getByToken(m_sumToken,sums);
494 
495  for ( int ibx=sums->getFirstBX(); ibx<=sums->getLastBX(); ++ibx) {
496 
497  for ( auto itr = sums->begin(ibx); itr != sums->end(ibx); ++itr ) {
498 
499  hbx_.at(Sum)->Fill( ibx );
500  het_.at(Sum)->Fill( itr->hwPt() );
501  heta_.at(Sum)->Fill( itr->hwEta() );
502  hphi_.at(Sum)->Fill( itr->hwPhi() );
503  hetaphi_.at(Sum)->Fill( itr->hwEta(), itr->hwPhi(), itr->hwPt() );
504  text << "Sum : " << " type=" << itr->getType() << " BX=" << ibx << " ipt=" << itr->hwPt() << " ieta=" << itr->hwEta() << " iphi=" << itr->hwPhi() << std::endl;
505  }
506 
507  }
508 
509  }
510 
511  //Algorithm Bits
512  if (m_doGtAlg) {
514  iEvent.getByToken(m_gtAlgToken,algs);
515 
516  for ( int ibx=algs->getFirstBX(); ibx<=algs->getLastBX(); ++ibx) {
517 
518  for ( auto itr = algs->begin(ibx); itr != algs->end(ibx); ++itr ) {
519 
520  for(int algBit=0; algBit<128; algBit++) { //Fix Me: Should access size of algo vector...need method in GlobalAlgBlk class
521  if(itr->getAlgoDecisionFinal(algBit)) {
522  hAlgoBits_->Fill(algBit);
523  text << "HW Fired Alg Bit : " << algBit << std::endl;
524  }
525  }
526  }
527 
528  }
529 
530  }
531 
532  //Algorithm Bits (Emulation seeded by GT input)
533  if (m_doEmulGtAlg) {
534  Handle< BXVector<GlobalAlgBlk> > emulGtAlgs;
535  iEvent.getByToken(m_emulGtAlgToken,emulGtAlgs);
536 
537  for ( int ibx=emulGtAlgs->getFirstBX(); ibx<=emulGtAlgs->getLastBX(); ++ibx) {
538 
539  for ( auto itr = emulGtAlgs->begin(ibx); itr != emulGtAlgs->end(ibx); ++itr ) {
540 
541  for(int algBit=0; algBit<128; algBit++) { //Fix Me: Should access size of algo vector...need method in GlobalAlgBlk class
542  if(itr->getAlgoDecisionFinal(algBit)) {
543  hEmulGtAlgoBits_->Fill(algBit);
544  text << "Emul w/ GTInput Fired Alg Bit : " << algBit << std::endl;
545  }
546  }
547  }
548 
549  }
550 
551  }
552 
553  //Algorithm Bits (Emulation seeded by Demux Output)
554  if (m_doEmulDxAlg) {
555  Handle< BXVector<GlobalAlgBlk> > emulDxAlgs;
556  iEvent.getByToken(m_emulDxAlgToken,emulDxAlgs);
557 
558  for ( int ibx=emulDxAlgs->getFirstBX(); ibx<=emulDxAlgs->getLastBX(); ++ibx) {
559 
560  for ( auto itr = emulDxAlgs->begin(ibx); itr != emulDxAlgs->end(ibx); ++itr ) {
561 
562  for(int algBit=0; algBit<128; algBit++) { //Fix Me: Should access size of algo vector...need method in GlobalAlgBlk class
563  if(itr->getAlgoDecisionFinal(algBit)) {
564  hEmulDxAlgoBits_->Fill(algBit);
565  text << "Emul w/ Demux output Fired Alg Bit : " << algBit << std::endl;
566  }
567  }
568  }
569 
570  }
571 
572  }
573 
574 
575  // Mu (gmt vs GT)
576  if (m_doMUs & m_dogMUs) {
578  iEvent.getByToken(m_muToken,mus);
579 
581  iEvent.getByToken(m_gmuToken,gmtmus);
582 
583  for ( int ibx=mus->getFirstBX(); ibx<=mus->getLastBX(); ++ibx) {
584 
585  // Cycle through all GT MUs
586  for (unsigned int igtMU=0; igtMU<mus->size(ibx); igtMU++) {
587 
588  double gtMUEt = mus->at(ibx,igtMU).hwPt();
589  double gmtMUEt = 0.0;
590  if(gmtmus->size(ibx)>igtMU) gmtMUEt = gmtmus->at(ibx,igtMU).hwPt();
591  hGmtVsGTMUEt_->Fill(gtMUEt,gmtMUEt);
592 
593  double gtMUEta = mus->at(ibx,igtMU).hwEtaAtVtx();
594  double gmtMUEta = 0.0;
595  if(gmtmus->size(ibx)>igtMU) gmtMUEta = gmtmus->at(ibx,igtMU).hwEtaAtVtx();
596  hGmtVsGTMUEta_->Fill(gtMUEta,gmtMUEta);
597 
598  double gtMUPhi = mus->at(ibx,igtMU).hwPhiAtVtx();
599  double gmtMUPhi = 0.0;
600  if(gmtmus->size(ibx)>igtMU) gmtMUPhi = gmtmus->at(ibx,igtMU).hwPhiAtVtx();
601  hGmtVsGTMUPhi_->Fill(gtMUPhi,gmtMUPhi);
602 
603 
604 
605  }
606  // if there are extra MUs in the dmx record them
607  for (unsigned int igmtMU=mus->size(ibx); igmtMU<gmtmus->size(ibx); igmtMU++) {
608 
609 
610  double gtMUEt = 0.0; //no GT jet exists
611  double gmtMUEt = gmtmus->at(ibx,igmtMU).hwPt();
612  hGmtVsGTMUEt_->Fill(gtMUEt,gmtMUEt);
613 
614  double gtMUEta = 0.0;
615  double gmtMUEta = gmtmus->at(ibx,igmtMU).hwEtaAtVtx();
616  hGmtVsGTMUEta_->Fill(gtMUEta,gmtMUEta);
617 
618  double gtMUPhi = 0.0;
619  double gmtMUPhi = gmtmus->at(ibx,igmtMU).hwPhiAtVtx();
620  hGmtVsGTMUPhi_->Fill(gtMUPhi,gmtMUPhi);
621 
622  }
623 
624  }
625 
626  }
627 
628 
629  // EG (Dmx vs GT)
630  if (m_doEGs & m_doDmxEGs) {
632  iEvent.getByToken(m_egToken,egs);
633 
635  iEvent.getByToken(m_dmxEGToken,dmxegs);
636 
637  for ( int ibx=egs->getFirstBX(); ibx<=egs->getLastBX(); ++ibx) {
638 
639  // Cycle through all GT egs
640  for (unsigned int igtEG=0; igtEG<egs->size(ibx); igtEG++) {
641 
642  double gtEGEt = egs->at(ibx,igtEG).hwPt();
643  double dmxEGEt = 0.0;
644  if(dmxegs->size(ibx)>igtEG) dmxEGEt = dmxegs->at(ibx,igtEG).hwPt();
645  hDmxVsGTEGEt_->Fill(gtEGEt,dmxEGEt);
646 
647  double gtEGEta = egs->at(ibx,igtEG).hwEta();
648  double dmxEGEta = 0.0;
649  if(dmxegs->size(ibx)>igtEG) dmxEGEta = dmxegs->at(ibx,igtEG).hwEta();
650  hDmxVsGTEGEta_->Fill(gtEGEta,dmxEGEta);
651 
652  double gtEGPhi = egs->at(ibx,igtEG).hwPhi();
653  double dmxEGPhi = 0.0;
654  if(dmxegs->size(ibx)>igtEG) dmxEGPhi = dmxegs->at(ibx,igtEG).hwPhi();
655  hDmxVsGTEGPhi_->Fill(gtEGPhi,dmxEGPhi);
656 
657 
658 
659  }
660  // if there are extra egs in the dmx record them
661  for (unsigned int idmEG=egs->size(ibx); idmEG<dmxegs->size(ibx); idmEG++) {
662 
663 
664  double gtEGEt = 0.0; //no GT jet exists
665  double dmxEGEt = dmxegs->at(ibx,idmEG).hwPt();
666  hDmxVsGTEGEt_->Fill(gtEGEt,dmxEGEt);
667 
668  double gtEGEta = 0.0;
669  double dmxEGEta = dmxegs->at(ibx,idmEG).hwEta();
670  hDmxVsGTEGEta_->Fill(gtEGEta,dmxEGEta);
671 
672  double gtEGPhi = 0.0;
673  double dmxEGPhi = dmxegs->at(ibx,idmEG).hwPhi();
674  hDmxVsGTEGPhi_->Fill(gtEGPhi,dmxEGPhi);
675 
676  }
677 
678  }
679 
680  }
681 
682 
683  // Tau (Dmx vs GT)
684  if (m_doTaus & m_doDmxTaus) {
686  iEvent.getByToken(m_tauToken,taus);
687 
688  Handle< BXVector<l1t::Tau> > dmxtaus;
689  iEvent.getByToken(m_dmxTauToken,dmxtaus);
690 
691  for ( int ibx=taus->getFirstBX(); ibx<=taus->getLastBX(); ++ibx) {
692 
693  // Cycle through all GT taus
694  for (unsigned int igtTau=0; igtTau<taus->size(ibx); igtTau++) {
695 
696  double gtTauEt = taus->at(ibx,igtTau).hwPt();
697  double dmxTauEt = 0.0;
698  if(dmxtaus->size(ibx)>igtTau) dmxTauEt = dmxtaus->at(ibx,igtTau).hwPt();
699  hDmxVsGTTauEt_->Fill(gtTauEt,dmxTauEt);
700 
701  double gtTauEta = taus->at(ibx,igtTau).hwEta();
702  double dmxTauEta = 0.0;
703  if(dmxtaus->size(ibx)>igtTau) dmxTauEta = dmxtaus->at(ibx,igtTau).hwEta();
704  hDmxVsGTTauEta_->Fill(gtTauEta,dmxTauEta);
705 
706  double gtTauPhi = taus->at(ibx,igtTau).hwPhi();
707  double dmxTauPhi = 0.0;
708  if(dmxtaus->size(ibx)>igtTau) dmxTauPhi = dmxtaus->at(ibx,igtTau).hwPhi();
709  hDmxVsGTTauPhi_->Fill(gtTauPhi,dmxTauPhi);
710 
711 
712 
713  }
714  // if there are extra taus in the dmx record them
715  for (unsigned int idmTau=taus->size(ibx); idmTau<dmxtaus->size(ibx); idmTau++) {
716 
717 
718  double gtTauEt = 0.0; //no GT jet exists
719  double dmxTauEt = dmxtaus->at(ibx,idmTau).hwPt();
720  hDmxVsGTTauEt_->Fill(gtTauEt,dmxTauEt);
721 
722  double gtTauEta = 0.0;
723  double dmxTauEta = dmxtaus->at(ibx,idmTau).hwEta();
724  hDmxVsGTTauEta_->Fill(gtTauEta,dmxTauEta);
725 
726  double gtTauPhi = 0.0;
727  double dmxTauPhi = dmxtaus->at(ibx,idmTau).hwPhi();
728  hDmxVsGTTauPhi_->Fill(gtTauPhi,dmxTauPhi);
729 
730  }
731 
732  }
733 
734  }
735 
736 
737 
738  // Jets (Dmx vs GT)
739  if (m_doJets & m_doDmxJets) {
741  iEvent.getByToken(m_jetToken,jets);
742 
743  Handle< BXVector<l1t::Jet> > dmxjets;
744  iEvent.getByToken(m_dmxJetToken,dmxjets);
745 
746  for ( int ibx=jets->getFirstBX(); ibx<=jets->getLastBX(); ++ibx) {
747 
748  // Cycle through all GT jets
749  for (unsigned int igtJ=0; igtJ<jets->size(ibx); igtJ++) {
750 
751  double gtJetEt = jets->at(ibx,igtJ).hwPt();
752  double dmxJetEt = 0.0;
753  if(dmxjets->size(ibx)>igtJ) dmxJetEt = dmxjets->at(ibx,igtJ).hwPt();
754  hDmxVsGTJetEt_->Fill(gtJetEt,dmxJetEt);
755 
756  double gtJetEta = jets->at(ibx,igtJ).hwEta();
757  double dmxJetEta = 0.0;
758  if(dmxjets->size(ibx)>igtJ) dmxJetEta = dmxjets->at(ibx,igtJ).hwEta();
759  hDmxVsGTJetEta_->Fill(gtJetEta,dmxJetEta);
760 
761  double gtJetPhi = jets->at(ibx,igtJ).hwPhi();
762  double dmxJetPhi = 0.0;
763  if(dmxjets->size(ibx)>igtJ) dmxJetPhi = dmxjets->at(ibx,igtJ).hwPhi();
764  hDmxVsGTJetPhi_->Fill(gtJetPhi,dmxJetPhi);
765 
766 
767 
768  }
769  // if there are extra jets in the dmx record them
770  for (unsigned int idmJ=jets->size(ibx); idmJ<dmxjets->size(ibx); idmJ++) {
771 
772 
773  double gtJetEt = 0.0; //no GT jet exists
774  double dmxJetEt = dmxjets->at(ibx,idmJ).hwPt();
775  hDmxVsGTJetEt_->Fill(gtJetEt,dmxJetEt);
776 
777  double gtJetEta = 0.0;
778  double dmxJetEta = dmxjets->at(ibx,idmJ).hwEta();
779  hDmxVsGTJetEta_->Fill(gtJetEta,dmxJetEta);
780 
781  double gtJetPhi = 0.0;
782  double dmxJetPhi = dmxjets->at(ibx,idmJ).hwPhi();
783  hDmxVsGTJetPhi_->Fill(gtJetPhi,dmxJetPhi);
784 
785  }
786 
787  }
788 
789  }
790 
791  // Sums (Dmx vs GT)
792  if (m_doSums & m_doDmxSums) {
794  iEvent.getByToken(m_sumToken,sums);
795 
797  iEvent.getByToken(m_dmxSumToken,dmxSums);
798 
799  for ( int ibx=sums->getFirstBX(); ibx<=sums->getLastBX(); ++ibx) {
800 
801  // Cycle through all GT sums
802  for (unsigned int igtS=0; igtS<sums->size(ibx); igtS++) {
803 
804  double gtSumEt = sums->at(ibx,igtS).hwPt();
805  double dmxSumEt = 0.0;
806  if(dmxSums->size(ibx)>igtS) dmxSumEt = dmxSums->at(ibx,igtS).hwPt();
807 
808  double gtSumPhi = sums->at(ibx,igtS).hwPhi();
809  double dmxSumPhi = 0.0;
810  if(dmxSums->size(ibx)>igtS) dmxSumPhi = dmxSums->at(ibx,igtS).hwPhi();
811 
812  if(sums->at(ibx,igtS).getType() == dmxSums->at(ibx,igtS).getType()) {
813  switch(sums->at(ibx,igtS).getType()) {
815  hDmxVsGTSumEt_ETT_->Fill(gtSumEt,dmxSumEt);
816 
817  break;
818  case l1t::EtSum::EtSumType::kTotalEtEm:
819  hDmxVsGTSumEt_ETTem_->Fill(gtSumEt,dmxSumEt);
820 
821  break;
823  hDmxVsGTSumEt_HTT_->Fill(gtSumEt,dmxSumEt);
824 
825  break;
827  hDmxVsGTSumEt_ETM_->Fill(gtSumEt,dmxSumEt);
828  hDmxVsGTSumPhi_ETM_->Fill(gtSumPhi,dmxSumPhi);
829  break;
830  case l1t::EtSum::EtSumType::kMissingEtHF:
831  hDmxVsGTSumEt_ETMHF_->Fill(gtSumEt,dmxSumEt);
832  hDmxVsGTSumPhi_ETMHF_->Fill(gtSumPhi,dmxSumPhi);
833  break;
835  hDmxVsGTSumEt_HTM_->Fill(gtSumEt,dmxSumEt);
836  hDmxVsGTSumPhi_HTM_->Fill(gtSumPhi,dmxSumPhi);
837  break;
838  case l1t::EtSum::EtSumType::kMinBiasHFP0:
839  hDmxVsGTSumEt_HFP0_->Fill(gtSumEt,dmxSumEt);
840  break;
841  case l1t::EtSum::EtSumType::kMinBiasHFM0:
842  hDmxVsGTSumEt_HFM0_->Fill(gtSumEt,dmxSumEt);
843  break;
844  case l1t::EtSum::EtSumType::kMinBiasHFP1:
845  hDmxVsGTSumEt_HFP1_->Fill(gtSumEt,dmxSumEt);
846  break;
847  case l1t::EtSum::EtSumType::kMinBiasHFM1:
848  hDmxVsGTSumEt_HFM1_->Fill(gtSumEt,dmxSumEt);
849  break;
850  default:
851  break;
852  }
853  } else {
854  text << "WARNING: EtSum Types do not line up between DeMux and uGT " << std::endl;
855  }
856  }
857  // if there are extra sumss in the dmx record them...should not be any...but let's check
858  for (unsigned int idmS=sums->size(ibx); idmS<dmxSums->size(ibx); idmS++) {
859 
860 
861  double gtSumEt = -1.0; //no GT jet exists
862  double dmxSumEt = dmxSums->at(ibx,idmS).hwPt();
863 
864  double gtSumPhi = -1.0;
865  double dmxSumPhi = dmxSums->at(ibx,idmS).hwPhi();
866 
867  switch(dmxSums->at(ibx,idmS).getType()) {
869  hDmxVsGTSumEt_ETT_->Fill(gtSumEt,dmxSumEt);
870 
871  break;
872  case l1t::EtSum::EtSumType::kTotalEtEm:
873  hDmxVsGTSumEt_ETTem_->Fill(gtSumEt,dmxSumEt);
874 
875  break;
877  hDmxVsGTSumEt_HTT_->Fill(gtSumEt,dmxSumEt);
878 
879  break;
881  hDmxVsGTSumEt_ETM_->Fill(gtSumEt,dmxSumEt);
882  hDmxVsGTSumPhi_ETM_->Fill(gtSumPhi,dmxSumPhi);
883  break;
884  case l1t::EtSum::EtSumType::kMissingEtHF:
885  hDmxVsGTSumEt_ETMHF_->Fill(gtSumEt,dmxSumEt);
886  hDmxVsGTSumPhi_ETMHF_->Fill(gtSumPhi,dmxSumPhi);
887  break;
889  hDmxVsGTSumEt_HTM_->Fill(gtSumEt,dmxSumEt);
890  hDmxVsGTSumPhi_HTM_->Fill(gtSumPhi,dmxSumPhi);
891  break;
892  default:
893  break;
894  }
895 
896  }
897 
898  }
899 
900  }
901 
902 
903  //Algorithm Bits (Emulation vs HW)
904  if (m_doGtAlg && m_doEmulGtAlg) {
906  iEvent.getByToken(m_gtAlgToken,hwalgs);
907 
909  iEvent.getByToken(m_emulGtAlgToken,emulAlgs);
910 
911 
912  //for ( int ibx=hwalgs->getFirstBX(); ibx<=hwalgs->getLastBX(); ++ibx) {
913  int ibx=0;
914 
915  auto itr = hwalgs->begin(ibx);
916  auto itr_emul = emulAlgs->begin(ibx);
917 
918  for(int algBit=0; algBit<128; algBit++) { //Fix Me: Should access size of algo vector...need method in GlobalAlgBlk class
919  bool hw = itr->getAlgoDecisionFinal(algBit);
920  bool em = itr_emul->getAlgoDecisionFinal(algBit);
921  if(hw & em) {
922  hAlgoBitsEmulGtVsHw_->Fill(algBit,algBit);
923  }else if(hw & !em) {
924  hAlgoBitsEmulGtVsHw_->Fill(algBit,-1.0);
925  text << "WARNING: HW Fnd Alg Bit " << algBit << " but emulation did not " << std::endl;
926  }else if(!hw & em) {
927  hAlgoBitsEmulGtVsHw_->Fill(-1.0,algBit);
928  text << "WARNING: Emul. Fnd Alg Bit " << algBit << " but hardware did not " << std::endl;
929  }
930  }
931 
932  // }
933 
934  }
935 
936  //Algorithm Bits (Emulation vs HW)
937  if (m_doGtAlg && m_doEmulDxAlg) {
939  iEvent.getByToken(m_gtAlgToken,hwalgs);
940 
942  iEvent.getByToken(m_emulDxAlgToken,emulAlgs);
943 
944 
945  //for ( int ibx=hwalgs->getFirstBX(); ibx<=hwalgs->getLastBX(); ++ibx) {
946  int ibx=0;
947 
948  auto itr = hwalgs->begin(ibx);
949  auto itr_emul = emulAlgs->begin(ibx);
950 
951  for(int algBit=0; algBit<128; algBit++) { //Fix Me: Should access size of algo vector...need method in GlobalAlgBlk class
952  bool hw = itr->getAlgoDecisionFinal(algBit);
953  bool em = itr_emul->getAlgoDecisionFinal(algBit);
954  if(hw & em) {
955  hAlgoBitsEmulDxVsHw_->Fill(algBit,algBit);
956  }else if(hw & !em) {
957  hAlgoBitsEmulDxVsHw_->Fill(algBit,-1.0);
958  }else if(!hw & em) {
959  hAlgoBitsEmulDxVsHw_->Fill(-1.0,algBit);
960  }
961  }
962 
963  // }
964 
965  }
966 
967 
968 
969 
970  if (doText_) edm::LogInfo("L1TGlobalEvents") << text.str();
971 
972 }
edm::EDGetToken m_emulDxAlgToken
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:519
edm::EDGetToken m_dmxEGToken
std::map< ObjectType, TH2F * > hetaphi_
edm::EDGetToken m_emulGtAlgToken
std::map< ObjectType, TH1F * > hbx_
std::map< ObjectType, TH1F * > het_
Definition: Jet.py:1
vector< PseudoJet > jets
edm::EDGetToken m_gmuToken
edm::EDGetToken m_dmxTauToken
edm::EDGetToken m_gtAlgToken
edm::EDGetToken m_sumToken
Definition: Tau.py:1
edm::EDGetToken m_dmxSumToken
edm::EDGetToken m_tauToken
std::map< ObjectType, TH1F * > heta_
std::map< ObjectType, TH1F * > hphi_
HLT enums.
edm::EDGetToken m_jetToken
edm::EDGetToken m_dmxJetToken
void L1TGlobalAnalyzer::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 978 of file L1TGlobalAnalyzer.cc.

References algDir_, dirs_, DmxEG, DmxJet, DmxSum, DmxTau, dmxVGtDir_, EG, gMU, hAlgoBits_, hAlgoBitsEmulDxVsHw_, hAlgoBitsEmulGtVsHw_, hbx_, hDmxVsGTEGEt_, hDmxVsGTEGEta_, hDmxVsGTEGPhi_, hDmxVsGTJetEt_, hDmxVsGTJetEta_, hDmxVsGTJetPhi_, hDmxVsGTSumEt_ETM_, hDmxVsGTSumEt_ETMHF_, hDmxVsGTSumEt_ETT_, hDmxVsGTSumEt_ETTem_, hDmxVsGTSumEt_HFM0_, hDmxVsGTSumEt_HFM1_, hDmxVsGTSumEt_HFP0_, hDmxVsGTSumEt_HFP1_, hDmxVsGTSumEt_HTM_, hDmxVsGTSumEt_HTT_, hDmxVsGTSumPhi_ETM_, hDmxVsGTSumPhi_ETMHF_, hDmxVsGTSumPhi_HTM_, hDmxVsGTTauEt_, hDmxVsGTTauEta_, hDmxVsGTTauPhi_, hEmulDxAlgoBits_, hEmulGtAlgoBits_, het_, heta_, hetaphi_, hGmtVsGTMUEt_, hGmtVsGTMUEta_, hGmtVsGTMUPhi_, hphi_, TFileDirectory::make(), TFileService::mkdir(), MU, harvestTrackValidationPlots::str, Sum, types_, and typeStr_.

979 {
980 
982 
983  auto itr = types_.cbegin();
984  auto str = typeStr_.cbegin();
985 
986  for (; itr!=types_.end(); ++itr, ++str ) {
987 
988  if (*itr==Jet || *itr==DmxJet || *itr==Sum || *itr==DmxSum || *itr==DmxEG || *itr==EG || *itr==DmxTau || *itr==Tau) {
989  double etmax=99.5;
990  if (*itr==Jet || *itr==DmxJet || *itr==Sum || *itr==DmxSum) etmax=499.5;
991 
992  dirs_.insert( std::pair< ObjectType, TFileDirectory >(*itr, fs->mkdir(*str) ) );
993 
994  het_.insert( std::pair< ObjectType, TH1F* >(*itr, dirs_.at(*itr).make<TH1F>("et", "", 500, -0.5, etmax) ));
995 
996  hbx_.insert( std::pair< ObjectType, TH1F* >(*itr, dirs_.at(*itr).make<TH1F>("bx", "", 11, -5.5, 5.5) ));
997 
998 
999  heta_.insert( std::pair< ObjectType, TH1F* >(*itr, dirs_.at(*itr).make<TH1F>("eta", "", 229, -114.5, 114.5) ));
1000  hphi_.insert( std::pair< ObjectType, TH1F* >(*itr, dirs_.at(*itr).make<TH1F>("phi", "", 144, -0.5, 143.5) ));
1001  hetaphi_.insert( std::pair< ObjectType, TH2F* >(*itr, dirs_.at(*itr).make<TH2F>("etaphi", "", 229, -114.5, 114.5, 144, -0.5, 143.5) ));
1002  } else if( *itr==MU || *itr==gMU) {
1003  double etmax = 511.5;
1004  dirs_.insert( std::pair< ObjectType, TFileDirectory >(*itr, fs->mkdir(*str) ) );
1005 
1006  het_.insert( std::pair< ObjectType, TH1F* >(*itr, dirs_.at(*itr).make<TH1F>("et", "", 512, -0.5, etmax) ));
1007 
1008  hbx_.insert( std::pair< ObjectType, TH1F* >(*itr, dirs_.at(*itr).make<TH1F>("bx", "", 11, -5.5, 5.5) ));
1009 
1010 
1011  heta_.insert( std::pair< ObjectType, TH1F* >(*itr, dirs_.at(*itr).make<TH1F>("eta", "", 549, -224.5, 224.5) ));
1012  hphi_.insert( std::pair< ObjectType, TH1F* >(*itr, dirs_.at(*itr).make<TH1F>("phi", "", 576, -0.5, 575.5) ));
1013  hetaphi_.insert( std::pair< ObjectType, TH2F* >(*itr, dirs_.at(*itr).make<TH2F>("etaphi", "", 549, -224.5, 224.5, 576, -0.5, 575.5) ));
1014 
1015  }
1016 
1017 
1018 
1019  }
1020 
1021  algDir_ = fs->mkdir("Algorithms");
1022  hAlgoBits_ = algDir_.make<TH1F>("hAlgoBits","Algorithm Bits",100, -0.5,99.5);
1023  hEmulGtAlgoBits_ = algDir_.make<TH1F>("hEmulGtAlgoBits","GT Emulated Algorithm Bits",100, -0.5,99.5);
1024  hAlgoBitsEmulGtVsHw_ = algDir_.make<TH2F>("hAlgoBitsEmulGtVsHw","Algorithm Bits (GT) Emulation vs Hardware",129, -1.5,127.5,129,-1.5,127.5);
1025  hEmulDxAlgoBits_ = algDir_.make<TH1F>("hEmulDxAlgoBits","Dx Emulated Algorithm Bits",100, -0.5,99.5);
1026  hAlgoBitsEmulDxVsHw_ = algDir_.make<TH2F>("hAlgoBitsEmulDxVsHw","Algorithm Bits (Dx) Emulation vs Hardware",129, -1.5,127.5,129,-1.5,127.5);
1027 
1028  dmxVGtDir_ = fs->mkdir("SourceVsGT");
1029 
1030  hGmtVsGTMUEt_ = dmxVGtDir_.make<TH2F>("hGmtVsGTMUEt", "Gmt MU Et versus GT MU Et", 512,-0.5,511.5,512,-0.5,511.5);
1031  hGmtVsGTMUEta_ = dmxVGtDir_.make<TH2F>("hGmtVsGTMUEta","Gmt MU Eta versus GT MU Eta",549, -224.5, 224.5,549, -224.5, 224.5);
1032  hGmtVsGTMUPhi_ = dmxVGtDir_.make<TH2F>("hGmtVsGTMUPhi","Gmt MU Phi versus GT MU Phi",576, -0.5, 575.5,576, -0.5, 575.5);
1033 
1034  hDmxVsGTEGEt_ = dmxVGtDir_.make<TH2F>("hDmxVsGTEGEt","Dmx EG Et versus GT EG Et", 500,-0.5,499.5,500,-0.5,499.5);
1035  hDmxVsGTEGEta_ = dmxVGtDir_.make<TH2F>("hDmxVsGTEGEta","Dmx EG Eta versus GT EG Eta",229,-114.5,114.5,229,-114.5,114.5);
1036  hDmxVsGTEGPhi_ = dmxVGtDir_.make<TH2F>("hDmxVsGTEGPhi","Dmx EG Phi versus GT EG Phi",144,-0.5,143.5,144,-0.5,143.5);
1037 
1038  hDmxVsGTTauEt_ = dmxVGtDir_.make<TH2F>("hDmxVsGTTauEt","Dmx Tau Et versus GT Tau Et", 500,-0.5,499.5,500,-0.5,499.5);
1039  hDmxVsGTTauEta_ = dmxVGtDir_.make<TH2F>("hDmxVsGTTauEta","Dmx Tau Eta versus GT Tau Eta",229,-114.5,114.5,229,-114.5,114.5);
1040  hDmxVsGTTauPhi_ = dmxVGtDir_.make<TH2F>("hDmxVsGTTauPhi","Dmx Tau Phi versus GT Tau Phi",144,-0.5,143.5,144,-0.5,143.5);
1041 
1042  hDmxVsGTJetEt_ = dmxVGtDir_.make<TH2F>("hDmxVsGTJetEt","Dmx Jet Et versus GT Jet Et", 500,-0.5,499.5,500,-0.5,499.5);
1043  hDmxVsGTJetEta_ = dmxVGtDir_.make<TH2F>("hDmxVsGTJetEta","Dmx Jet Eta versus GT Jet Eta",229,-114.5,114.5,229,-114.5,114.5);
1044  hDmxVsGTJetPhi_ = dmxVGtDir_.make<TH2F>("hDmxVsGTJetPhi","Dmx Jet Phi versus GT Jet Phi",144,-0.5,143.5,144,-0.5,143.5);
1045 
1046  hDmxVsGTSumEt_ETT_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_ETT","Dmx ETT versus GT ETT",256,-0.5,2047.5,256,-0.5,2047.5);
1047  hDmxVsGTSumEt_ETTem_= dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_ETTem","Dmx ETTem versus GT ETTem",256,-0.5,2047.5,256,-0.5,2047.5);
1048  hDmxVsGTSumEt_HTT_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_HTT","Dmx HTT versus GT HTT",256,-0.5,2047.5,256,-0.5,2047.5);
1049  hDmxVsGTSumEt_ETM_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_ETM","Dmx ETM versus GT ETM",500,-0.5,499.5,500,-0.5,499.5);
1050  hDmxVsGTSumPhi_ETM_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumPhi_ETM","Dmx ETM Phi versus GT ETM Phi",144,-0.5,143.5,144,-0.5,143.5);
1051  hDmxVsGTSumEt_ETMHF_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_ETMHF","Dmx ETMHF versus GT ETMHF",500,-0.5,499.5,500,-0.5,499.5);
1052  hDmxVsGTSumPhi_ETMHF_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumPhi_ETMHF","Dmx ETMHF Phi versus GT ETMHF Phi",144,-0.5,143.5,144,-0.5,143.5);
1053  hDmxVsGTSumEt_HTM_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_HTM","Dmx HTM versus GT HTM",500,-0.5,499.5,500,-0.5,499.5);
1054  hDmxVsGTSumPhi_HTM_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumPhi_HTM","Dmx HTM Phi versus GT HTM Phi",144,-0.5,143.5,144,-0.5,143.5);
1055 
1056  hDmxVsGTSumEt_HFP0_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_HFP0","Dmx versus GT HFP0",16,-0.5,15.5,16,-0.5,15.5);
1057  hDmxVsGTSumEt_HFM0_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_HFM0","Dmx versus GT HFM0",16,-0.5,15.5,16,-0.5,15.5);
1058  hDmxVsGTSumEt_HFP1_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_HFP1","Dmx versus GT HFP1",16,-0.5,15.5,16,-0.5,15.5);
1059  hDmxVsGTSumEt_HFM1_ = dmxVGtDir_.make<TH2F>("hDmxVsGTSumEt_HFM1","Dmx versus GT HFM1",16,-0.5,15.5,16,-0.5,15.5);
1060 
1061 
1062 
1063 }
std::map< ObjectType, TH2F * > hetaphi_
std::map< ObjectType, TH1F * > hbx_
std::map< ObjectType, TH1F * > het_
Definition: Jet.py:1
T * make(const Args &...args) const
make new ROOT object
std::vector< std::string > typeStr_
Definition: Tau.py:1
TFileDirectory mkdir(const std::string &dir, const std::string &descr="")
create a new subdirectory
Definition: TFileService.h:69
std::map< ObjectType, TH1F * > heta_
std::map< ObjectType, TH1F * > hphi_
std::map< ObjectType, TFileDirectory > dirs_
std::vector< ObjectType > types_
void L1TGlobalAnalyzer::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 1067 of file L1TGlobalAnalyzer.cc.

1068 {
1069 }
void L1TGlobalAnalyzer::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 1105 of file L1TGlobalAnalyzer.cc.

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

1105  {
1106  //The following says we do not know what parameters are allowed so do no validation
1107  // Please change this to state exactly what you do use, even if it is no parameters
1109  desc.setUnknown();
1110  descriptions.addDefault(desc);
1111 }
void addDefault(ParameterSetDescription const &psetDescription)

Member Data Documentation

TFileDirectory l1t::L1TGlobalAnalyzer::algDir_
private

Definition at line 132 of file L1TGlobalAnalyzer.cc.

Referenced by beginJob().

std::map< ObjectType, TFileDirectory > l1t::L1TGlobalAnalyzer::dirs_
private

Definition at line 124 of file L1TGlobalAnalyzer.cc.

Referenced by beginJob().

TFileDirectory l1t::L1TGlobalAnalyzer::dmxVGtDir_
private

Definition at line 133 of file L1TGlobalAnalyzer.cc.

Referenced by beginJob().

bool l1t::L1TGlobalAnalyzer::doHistos_
private

Definition at line 104 of file L1TGlobalAnalyzer.cc.

bool l1t::L1TGlobalAnalyzer::doText_
private

Definition at line 103 of file L1TGlobalAnalyzer.cc.

Referenced by analyze().

TFileDirectory l1t::L1TGlobalAnalyzer::evtDispDir_
private

Definition at line 131 of file L1TGlobalAnalyzer.cc.

TH1F* l1t::L1TGlobalAnalyzer::hAlgoBits_
private

Definition at line 134 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hAlgoBitsEmulDxVsHw_
private

Definition at line 138 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hAlgoBitsEmulGtVsHw_
private

Definition at line 137 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

std::map< ObjectType, TH1F* > l1t::L1TGlobalAnalyzer::hbx_
private

Definition at line 128 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTEGEt_
private

Definition at line 142 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTEGEta_
private

Definition at line 143 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTEGPhi_
private

Definition at line 144 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTJetEt_
private

Definition at line 148 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTJetEta_
private

Definition at line 149 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTJetPhi_
private

Definition at line 150 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_ETM_
private

Definition at line 154 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_ETMHF_
private

Definition at line 156 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_ETT_
private

Definition at line 151 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_ETTem_
private

Definition at line 152 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_HFM0_
private

Definition at line 161 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_HFM1_
private

Definition at line 163 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_HFP0_
private

Definition at line 160 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_HFP1_
private

Definition at line 162 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_HTM_
private

Definition at line 158 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumEt_HTT_
private

Definition at line 153 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumPhi_ETM_
private

Definition at line 155 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumPhi_ETMHF_
private

Definition at line 157 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTSumPhi_HTM_
private

Definition at line 159 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTTauEt_
private

Definition at line 145 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTTauEta_
private

Definition at line 146 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hDmxVsGTTauPhi_
private

Definition at line 147 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH1F* l1t::L1TGlobalAnalyzer::hEmulDxAlgoBits_
private

Definition at line 136 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH1F* l1t::L1TGlobalAnalyzer::hEmulGtAlgoBits_
private

Definition at line 135 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

std::map< ObjectType, TH1F* > l1t::L1TGlobalAnalyzer::het_
private

Definition at line 125 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

std::map< ObjectType, TH1F* > l1t::L1TGlobalAnalyzer::heta_
private

Definition at line 126 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

std::map< ObjectType, TH2F* > l1t::L1TGlobalAnalyzer::hetaphi_
private

Definition at line 129 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hGmtVsGTMUEt_
private

Definition at line 139 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hGmtVsGTMUEta_
private

Definition at line 140 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

TH2F* l1t::L1TGlobalAnalyzer::hGmtVsGTMUPhi_
private

Definition at line 141 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

std::map< ObjectType, TH1F* > l1t::L1TGlobalAnalyzer::hphi_
private

Definition at line 127 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and beginJob().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_dmxEGToken
private

Definition at line 74 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_dmxJetToken
private

Definition at line 76 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_dmxSumToken
private

Definition at line 77 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_dmxTauToken
private

Definition at line 75 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doDmxEGs
private

Definition at line 89 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doDmxJets
private

Definition at line 91 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doDmxSums
private

Definition at line 92 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doDmxTaus
private

Definition at line 90 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doEGs
private

Definition at line 94 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doEmulDxAlg
private

Definition at line 101 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doEmulGtAlg
private

Definition at line 100 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_dogMUs
private

Definition at line 88 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doGtAlg
private

Definition at line 99 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doJets
private

Definition at line 96 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doMUs
private

Definition at line 93 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doSums
private

Definition at line 97 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

bool l1t::L1TGlobalAnalyzer::m_doTaus
private

Definition at line 95 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_egToken
private

Definition at line 79 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_emulDxAlgToken
private

Definition at line 86 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_emulGtAlgToken
private

Definition at line 85 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_gmuToken
private

Definition at line 73 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_gtAlgToken
private

Definition at line 84 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_jetToken
private

Definition at line 81 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_muToken
private

Definition at line 78 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_sumToken
private

Definition at line 82 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

edm::EDGetToken l1t::L1TGlobalAnalyzer::m_tauToken
private

Definition at line 80 of file L1TGlobalAnalyzer.cc.

Referenced by analyze(), and L1TGlobalAnalyzer().

std::vector< ObjectType > l1t::L1TGlobalAnalyzer::types_
private

Definition at line 121 of file L1TGlobalAnalyzer.cc.

Referenced by beginJob(), and L1TGlobalAnalyzer().

std::vector< std::string > l1t::L1TGlobalAnalyzer::typeStr_
private

Definition at line 122 of file L1TGlobalAnalyzer.cc.

Referenced by beginJob(), and L1TGlobalAnalyzer().