CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Types | Private Attributes
TriggerSummaryProducerAOD Class Reference

#include <TriggerSummaryProducerAOD.h>

Inheritance diagram for TriggerSummaryProducerAOD:
edm::stream::EDProducer< edm::GlobalCache< GlobalInputTags > > edm::stream::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Classes

struct  OrderInputTag
 InputTag ordering class. More...
 

Public Member Functions

virtual void endStream () override
 
template<typename C >
void fillFilterObjectMember (const int &, const int &, const edm::Ref< C > &)
 
void fillFilterObjectMember (const int &, const int &, const edm::Ref< l1extra::L1HFRingsCollection > &)
 
void fillFilterObjectMember (const int &, const int &, const edm::Ref< l1extra::L1EtMissParticleCollection > &)
 
void fillFilterObjectMember (const int &, const int &, const edm::Ref< reco::CaloMETCollection > &)
 
void fillFilterObjectMember (const int &, const int &, const edm::Ref< reco::METCollection > &)
 
template<typename C >
void fillFilterObjectMembers (const edm::Event &, const edm::InputTag &tag, const trigger::Vids &, const std::vector< edm::Ref< C > > &)
 
template<typename T >
void fillTriggerObject (const T &)
 
void fillTriggerObject (const l1extra::L1HFRings &)
 
void fillTriggerObject (const l1extra::L1EtMissParticle &)
 
void fillTriggerObject (const reco::CaloMET &)
 
void fillTriggerObject (const reco::MET &)
 
template<typename C >
void fillTriggerObjectCollections (const edm::Event &, edm::GetterOfProducts< C > &)
 
virtual void produce (edm::Event &, const edm::EventSetup &) override
 
 TriggerSummaryProducerAOD (const edm::ParameterSet &, const GlobalInputTags *)
 
 ~TriggerSummaryProducerAOD ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< GlobalInputTags > >
 EDProducer ()=default
 
- Public Member Functions inherited from edm::stream::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDProducerBase ()
 
- Public Member Functions inherited from edm::ProducerBase
 ProducerBase ()
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription
const &)> 
registrationCallback () const
 used by the fwk to register list of products More...
 
virtual ~ProducerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
ProductHolderIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
std::vector
< ProductHolderIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesDependentUpon (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
static void globalEndJob (const GlobalInputTags *)
 
static std::unique_ptr
< GlobalInputTags
initializeGlobalCache (edm::ParameterSet const &)
 
- Static Public Member Functions inherited from edm::stream::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Types

typedef std::set
< edm::InputTag, OrderInputTag
InputTagSet
 

Private Attributes

InputTagSet collectionTagsEvent_
 list of L3 collection tags More...
 
InputTagSet collectionTagsStream_
 
InputTagSet filterTagsEvent_
 list of L3 filter tags More...
 
InputTagSet filterTagsStream_
 
edm::GetterOfProducts
< reco::CaloJetCollection
getCaloJetCollection_
 
edm::GetterOfProducts
< reco::CaloMETCollection
getCaloMETCollection_
 
edm::GetterOfProducts
< reco::CompositeCandidateCollection
getCompositeCandidateCollection_
 
edm::GetterOfProducts
< reco::ElectronCollection
getElectronCollection_
 
edm::GetterOfProducts
< reco::IsolatedPixelTrackCandidateCollection
getIsolatedPixelTrackCandidateCollection_
 
edm::GetterOfProducts
< l1extra::L1EmParticleCollection
getL1EmParticleCollection_
 
edm::GetterOfProducts
< l1extra::L1EtMissParticleCollection
getL1EtMissParticleCollection_
 
edm::GetterOfProducts
< l1extra::L1HFRingsCollection
getL1HFRingsCollection_
 
edm::GetterOfProducts
< l1extra::L1JetParticleCollection
getL1JetParticleCollection_
 
edm::GetterOfProducts
< l1extra::L1MuonParticleCollection
getL1MuonParticleCollection_
 
edm::GetterOfProducts
< reco::METCollection
getMETCollection_
 
edm::GetterOfProducts
< reco::PFJetCollection
getPFJetCollection_
 
edm::GetterOfProducts
< reco::PFTauCollection
getPFTauCollection_
 
edm::GetterOfProducts
< reco::RecoChargedCandidateCollection
getRecoChargedCandidateCollection_
 
edm::GetterOfProducts
< reco::RecoEcalCandidateCollection
getRecoEcalCandidateCollection_
 
edm::GetterOfProducts
< trigger::TriggerFilterObjectWithRefs
getTriggerFilterObjectWithRefs_
 
trigger::Vids ids_
 ids More...
 
trigger::Keys keys_
 keys More...
 
std::vector< bool > maskFilters_
 packing decision More...
 
std::map< edm::ProductID,
unsigned int > 
offset_
 global map for indices into toc_: offset per input L3 collection More...
 
std::string pn_
 process name More...
 
std::vector< std::string > tags_
 
trigger::TriggerObjectCollection toc_
 trigger object collection More...
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< GlobalInputTags > >
typedef CacheContexts< T...> CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T...> HasAbility
 
typedef
CacheTypes::LuminosityBlockCache 
LuminosityBlockCache
 
typedef
LuminosityBlockContextT
< LuminosityBlockCache,
RunCache, GlobalCache
LuminosityBlockContext
 
typedef
CacheTypes::LuminosityBlockSummaryCache 
LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache,
GlobalCache
RunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDProducerBase
typedef EDProducerAdaptorBase ModuleType
 
- Public Types inherited from edm::ProducerBase
typedef
ProductRegistryHelper::TypeLabelList 
TypeLabelList
 
- Protected Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
- 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

This class is an EDProducer making the HLT summary object for AOD

Author
Martin Grunewald

See header file for documentation

Author
Martin Grunewald

Definition at line 81 of file TriggerSummaryProducerAOD.h.

Member Typedef Documentation

Definition at line 138 of file TriggerSummaryProducerAOD.h.

Constructor & Destructor Documentation

TriggerSummaryProducerAOD::TriggerSummaryProducerAOD ( const edm::ParameterSet ps,
const GlobalInputTags gt 
)
explicit

Definition at line 50 of file TriggerSummaryProducerAOD.cc.

References edm::ProducerBase::callWhenNewProductsRegistered(), collectionTagsEvent_, collectionTagsStream_, filterTagsEvent_, filterTagsStream_, getCaloJetCollection_, getCaloMETCollection_, getCompositeCandidateCollection_, getElectronCollection_, getIsolatedPixelTrackCandidateCollection_, getL1EmParticleCollection_, getL1EtMissParticleCollection_, getL1HFRingsCollection_, getL1JetParticleCollection_, getL1MuonParticleCollection_, getMETCollection_, getPFJetCollection_, getPFTauCollection_, edm::service::TriggerNamesService::getProcessName(), getRecoChargedCandidateCollection_, getRecoEcalCandidateCollection_, getTriggerFilterObjectWithRefs_, edm::Service< T >::isAvailable(), LogDebug, and pn_.

50  :
51  pn_(ps.getParameter<std::string>("processName")),
52  filterTagsEvent_(pn_!="*"),
53  filterTagsStream_(pn_!="*"),
56  toc_(),
57  tags_(),
58  offset_(),
59  keys_(),
60  ids_(),
61  maskFilters_()
62 {
63  if (pn_=="@") {
65  if (tns.isAvailable()) {
66  pn_ = tns->getProcessName();
67  } else {
68  edm::LogError("TriggerSummaryProducerAOD") << "HLT Error: TriggerNamesService not available!";
69  pn_="*";
70  }
71 
76  }
77  LogDebug("TriggerSummaryProducerAOD") << "Using process name: '" << pn_ <<"'";
78 
79  filterTagsStream_.clear();
80  collectionTagsStream_.clear();
81 
82  produces<trigger::TriggerEvent>();
83 
100 
108  getMETCollection_(bd);
118  });
119 }
#define LogDebug(id)
T getParameter(std::string const &) const
void callWhenNewProductsRegistered(std::function< void(BranchDescription const &)> const &func)
Definition: ProducerBase.h:51
edm::GetterOfProducts< l1extra::L1JetParticleCollection > getL1JetParticleCollection_
edm::GetterOfProducts< reco::IsolatedPixelTrackCandidateCollection > getIsolatedPixelTrackCandidateCollection_
edm::GetterOfProducts< reco::RecoEcalCandidateCollection > getRecoEcalCandidateCollection_
std::string const & getProcessName() const
edm::GetterOfProducts< l1extra::L1MuonParticleCollection > getL1MuonParticleCollection_
trigger::TriggerObjectCollection toc_
trigger object collection
edm::GetterOfProducts< reco::PFTauCollection > getPFTauCollection_
std::vector< bool > maskFilters_
packing decision
edm::GetterOfProducts< reco::METCollection > getMETCollection_
std::set< edm::InputTag, OrderInputTag > InputTagSet
edm::GetterOfProducts< reco::CaloJetCollection > getCaloJetCollection_
edm::GetterOfProducts< l1extra::L1EtMissParticleCollection > getL1EtMissParticleCollection_
std::vector< std::string > tags_
edm::GetterOfProducts< reco::PFJetCollection > getPFJetCollection_
edm::GetterOfProducts< reco::RecoChargedCandidateCollection > getRecoChargedCandidateCollection_
edm::GetterOfProducts< l1extra::L1HFRingsCollection > getL1HFRingsCollection_
bool isAvailable() const
Definition: Service.h:46
std::map< edm::ProductID, unsigned int > offset_
global map for indices into toc_: offset per input L3 collection
edm::GetterOfProducts< reco::CaloMETCollection > getCaloMETCollection_
edm::GetterOfProducts< reco::ElectronCollection > getElectronCollection_
InputTagSet collectionTagsEvent_
list of L3 collection tags
edm::GetterOfProducts< reco::CompositeCandidateCollection > getCompositeCandidateCollection_
edm::GetterOfProducts< trigger::TriggerFilterObjectWithRefs > getTriggerFilterObjectWithRefs_
InputTagSet filterTagsEvent_
list of L3 filter tags
edm::GetterOfProducts< l1extra::L1EmParticleCollection > getL1EmParticleCollection_
TriggerSummaryProducerAOD::~TriggerSummaryProducerAOD ( )

Definition at line 121 of file TriggerSummaryProducerAOD.cc.

122 {
123 }

Member Function Documentation

void TriggerSummaryProducerAOD::endStream ( )
overridevirtual

Reimplemented from edm::stream::EDProducerBase.

Definition at line 541 of file TriggerSummaryProducerAOD.cc.

References collectionTagsStream_, and filterTagsStream_.

541  {
542  globalCache()->collectionTagsGlobal_.insert(collectionTagsStream_.begin(),collectionTagsStream_.end());
543  globalCache()->filterTagsGlobal_.insert(filterTagsStream_.begin(),filterTagsStream_.end());
544  return;
545 }
void TriggerSummaryProducerAOD::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 157 of file TriggerSummaryProducerAOD.cc.

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), and AlCaHLTBitMon_QueryRunRegistry::string.

157  {
159  desc.add<std::string>("processName","@");
160  descriptions.add("triggerSummaryProducerAOD", desc);
161 }
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
template<typename C >
void TriggerSummaryProducerAOD::fillFilterObjectMember ( const int &  offset,
const int &  id,
const edm::Ref< C > &  ref 
)

Definition at line 469 of file TriggerSummaryProducerAOD.cc.

References ids_, edm::Ref< C, T, F >::key(), and keys_.

Referenced by fillFilterObjectMembers().

469  {
470 
471  keys_.push_back(offset+ref.key());
472  ids_.push_back(id);
473 
474  return;
475 }
key_type key() const
Accessor for product key.
Definition: Ref.h:266
void TriggerSummaryProducerAOD::fillFilterObjectMember ( const int &  offset,
const int &  id,
const edm::Ref< l1extra::L1HFRingsCollection > &  ref 
)

Definition at line 477 of file TriggerSummaryProducerAOD.cc.

References ids_, edm::Ref< C, T, F >::key(), keys_, and trigger::TriggerL1HfBitCounts.

477  {
478 
479  using namespace trigger;
480 
481  if (id==TriggerL1HfBitCounts) {
482  keys_.push_back(offset+2*ref.key()+1);
483  } else { // if (ids[i]==TriggerL1HfRingEtSums) {
484  keys_.push_back(offset+2*ref.key()+0);
485  }
486  ids_.push_back(id);
487 
488  return;
489 }
key_type key() const
Accessor for product key.
Definition: Ref.h:266
void TriggerSummaryProducerAOD::fillFilterObjectMember ( const int &  offset,
const int &  id,
const edm::Ref< l1extra::L1EtMissParticleCollection > &  ref 
)

Definition at line 491 of file TriggerSummaryProducerAOD.cc.

References ids_, edm::Ref< C, T, F >::key(), keys_, trigger::TriggerL1ETT, and trigger::TriggerL1HTT.

491  {
492 
493  using namespace trigger;
494 
495  if ( (id==TriggerL1ETT) || (id==TriggerL1HTT) ) {
496  keys_.push_back(offset+2*ref.key()+1);
497  } else {
498  keys_.push_back(offset+2*ref.key()+0);
499  }
500  ids_.push_back(id);
501 
502  return;
503 }
key_type key() const
Accessor for product key.
Definition: Ref.h:266
void TriggerSummaryProducerAOD::fillFilterObjectMember ( const int &  offset,
const int &  id,
const edm::Ref< reco::CaloMETCollection > &  ref 
)

Definition at line 505 of file TriggerSummaryProducerAOD.cc.

References ids_, edm::Ref< C, T, F >::key(), keys_, trigger::TriggerELongit, trigger::TriggerHLongit, trigger::TriggerMETSig, trigger::TriggerMHTSig, trigger::TriggerTET, and trigger::TriggerTHT.

505  {
506 
507  using namespace trigger;
508 
509  if ( (id==TriggerTHT) || (id==TriggerTET) ) {
510  keys_.push_back(offset+4*ref.key()+1);
511  } else if ( (id==TriggerMETSig) || (id==TriggerMHTSig) ) {
512  keys_.push_back(offset+4*ref.key()+2);
513  } else if ( (id==TriggerELongit) || (id==TriggerHLongit) ) {
514  keys_.push_back(offset+4*ref.key()+3);
515  } else {
516  keys_.push_back(offset+4*ref.key()+0);
517  }
518  ids_.push_back(id);
519 
520  return;
521 }
key_type key() const
Accessor for product key.
Definition: Ref.h:266
void TriggerSummaryProducerAOD::fillFilterObjectMember ( const int &  offset,
const int &  id,
const edm::Ref< reco::METCollection > &  ref 
)

Definition at line 523 of file TriggerSummaryProducerAOD.cc.

References ids_, edm::Ref< C, T, F >::key(), keys_, trigger::TriggerELongit, trigger::TriggerHLongit, trigger::TriggerMETSig, trigger::TriggerMHTSig, trigger::TriggerTET, and trigger::TriggerTHT.

523  {
524 
525  using namespace trigger;
526 
527  if ( (id==TriggerTHT) || (id==TriggerTET) ) {
528  keys_.push_back(offset+4*ref.key()+1);
529  } else if ( (id==TriggerMETSig) || (id==TriggerMHTSig) ) {
530  keys_.push_back(offset+4*ref.key()+2);
531  } else if ( (id==TriggerELongit) || (id==TriggerHLongit) ) {
532  keys_.push_back(offset+4*ref.key()+3);
533  } else {
534  keys_.push_back(offset+4*ref.key()+0);
535  }
536  ids_.push_back(id);
537 
538  return;
539 }
key_type key() const
Accessor for product key.
Definition: Ref.h:266
template<typename C >
void TriggerSummaryProducerAOD::fillFilterObjectMembers ( const edm::Event iEvent,
const edm::InputTag tag,
const trigger::Vids ids,
const std::vector< edm::Ref< C > > &  refs 
)

this routine takes a vector of Ref<C>s and determines the corresponding vector of keys (i.e., indices) into the TriggerObjectCollection

Definition at line 428 of file TriggerSummaryProducerAOD.cc.

References funct::C, edm::InputTag::encode(), fillFilterObjectMember(), edm::Event::getProvenance(), i, HLT_25ns14e33_v1_cff::InputTag, instance, diffTwoXMLs::label, min(), edm::Provenance::moduleLabel(), gen::n, mergeVDriftHistosByStation::name, offset_, sysUtil::pid, LaserDQM_cfg::process, edm::Provenance::processName(), edm::Provenance::productInstanceName(), and dt_dqm_sourceclient_common_cff::reco.

Referenced by produce().

428  {
429 
433 
434  using namespace std;
435  using namespace edm;
436  using namespace reco;
437  using namespace l1extra;
438  using namespace trigger;
439 
440  if (ids.size()!=refs.size()) {
441  LogError("TriggerSummaryProducerAOD") << "Vector length is different: "
442  << ids.size() << " " << refs.size();
443  }
444 
445  const unsigned int n(min(ids.size(),refs.size()));
446  for (unsigned int i=0; i!=n; ++i) {
447  const ProductID pid(refs[i].id());
448  if (offset_.find(pid)==offset_.end()) {
449  const string& label(iEvent.getProvenance(pid).moduleLabel());
450  const string& instance(iEvent.getProvenance(pid).productInstanceName());
451  const string& process(iEvent.getProvenance(pid).processName());
452  LogError("TriggerSummaryProducerAOD")
453  << "Uunknown pid:"
454  << " FilterTag/Key: " << tag.encode()
455  << "/" << i
456  << " CollectionTag/Key: "
457  << InputTag(label,instance,process).encode()
458  << "/" << refs[i].key()
459  << " CollectionType: " << typeid(C).name();
460  } else {
461  fillFilterObjectMember(offset_[pid],ids[i],refs[i]);
462  }
463  }
464  return;
465 
466 }
int i
Definition: DBlmapReader.cc:9
static PFTauRenderPlugin instance
void fillFilterObjectMember(const int &, const int &, const edm::Ref< C > &)
std::string const & processName() const
Definition: Provenance.h:61
std::string encode() const
Definition: InputTag.cc:164
std::map< edm::ProductID, unsigned int > offset_
global map for indices into toc_: offset per input L3 collection
T min(T a, T b)
Definition: MathUtil.h:58
tuple pid
Definition: sysUtil.py:22
std::string const & moduleLabel() const
Definition: Provenance.h:60
std::string const & productInstanceName() const
Definition: Provenance.h:62
tuple process
Definition: LaserDQM_cfg.py:3
Provenance getProvenance(BranchID const &theID) const
Definition: Event.cc:73
template<typename T >
void TriggerSummaryProducerAOD::fillTriggerObject ( const T object)

Definition at line 357 of file TriggerSummaryProducerAOD.cc.

References toc_.

Referenced by fillTriggerObjectCollections().

357  {
358 
359  using namespace trigger;
360  toc_.push_back( TriggerObject(object) );
361 
362  return;
363 }
trigger::TriggerObjectCollection toc_
trigger object collection
Single trigger physics object (e.g., an isolated muon)
Definition: TriggerObject.h:22
void TriggerSummaryProducerAOD::fillTriggerObject ( const l1extra::L1HFRings object)

Definition at line 365 of file TriggerSummaryProducerAOD.cc.

References toc_, trigger::TriggerL1HfBitCounts, and trigger::TriggerL1HfRingEtSums.

365  {
366 
367  using namespace l1extra;
368  using namespace trigger;
369 
371  object.hfEtSum(L1HFRings::kRing1PosEta),
372  object.hfEtSum(L1HFRings::kRing1NegEta),
373  object.hfEtSum(L1HFRings::kRing2PosEta),
374  object.hfEtSum(L1HFRings::kRing2NegEta) ) );
376  object.hfBitCount(L1HFRings::kRing1PosEta),
377  object.hfBitCount(L1HFRings::kRing1NegEta),
378  object.hfBitCount(L1HFRings::kRing2PosEta),
379  object.hfBitCount(L1HFRings::kRing2NegEta) ) );
380 
381  return;
382 }
trigger::TriggerObjectCollection toc_
trigger object collection
Single trigger physics object (e.g., an isolated muon)
Definition: TriggerObject.h:22
void TriggerSummaryProducerAOD::fillTriggerObject ( const l1extra::L1EtMissParticle object)

Definition at line 384 of file TriggerSummaryProducerAOD.cc.

References toc_, trigger::TriggerL1ETT, and trigger::TriggerL1HTT.

384  {
385 
386  using namespace l1extra;
387  using namespace trigger;
388 
389  toc_.push_back( TriggerObject(object) );
390  if (object.type()==L1EtMissParticle::kMET) {
391  toc_.push_back(TriggerObject(TriggerL1ETT,object.etTotal(),0.0,0.0,0.0));
392  } else if (object.type()==L1EtMissParticle::kMHT) {
393  toc_.push_back(TriggerObject(TriggerL1HTT,object.etTotal(),0.0,0.0,0.0));
394  } else {
395  toc_.push_back(TriggerObject(0, object.etTotal(),0.0,0.0,0.0));
396  }
397 
398  return;
399 }
type
Definition: HCALResponse.h:21
trigger::TriggerObjectCollection toc_
trigger object collection
Single trigger physics object (e.g., an isolated muon)
Definition: TriggerObject.h:22
void TriggerSummaryProducerAOD::fillTriggerObject ( const reco::CaloMET object)

Definition at line 401 of file TriggerSummaryProducerAOD.cc.

References dt_dqm_sourceclient_common_cff::reco, toc_, trigger::TriggerELongit, trigger::TriggerMETSig, and trigger::TriggerTET.

401  {
402 
403  using namespace reco;
404  using namespace trigger;
405 
406  toc_.push_back( TriggerObject(object) );
407  toc_.push_back(TriggerObject(TriggerTET ,object.sumEt() ,0.0,0.0,0.0));
408  toc_.push_back(TriggerObject(TriggerMETSig ,object.mEtSig() ,0.0,0.0,0.0));
409  toc_.push_back(TriggerObject(TriggerELongit,object.e_longitudinal(),0.0,0.0,0.0));
410 
411  return;
412 }
trigger::TriggerObjectCollection toc_
trigger object collection
Single trigger physics object (e.g., an isolated muon)
Definition: TriggerObject.h:22
void TriggerSummaryProducerAOD::fillTriggerObject ( const reco::MET object)

Definition at line 414 of file TriggerSummaryProducerAOD.cc.

References dt_dqm_sourceclient_common_cff::reco, toc_, trigger::TriggerHLongit, trigger::TriggerMHTSig, and trigger::TriggerTHT.

414  {
415 
416  using namespace reco;
417  using namespace trigger;
418 
419  toc_.push_back( TriggerObject(object) );
420  toc_.push_back(TriggerObject(TriggerTHT ,object.sumEt() ,0.0,0.0,0.0));
421  toc_.push_back(TriggerObject(TriggerMHTSig ,object.mEtSig() ,0.0,0.0,0.0));
422  toc_.push_back(TriggerObject(TriggerHLongit,object.e_longitudinal(),0.0,0.0,0.0));
423 
424  return;
425 }
trigger::TriggerObjectCollection toc_
trigger object collection
Single trigger physics object (e.g., an isolated muon)
Definition: TriggerObject.h:22
template<typename C >
void TriggerSummaryProducerAOD::fillTriggerObjectCollections ( const edm::Event iEvent,
edm::GetterOfProducts< C > &  getter 
)

this routine accesses the original (L3) collections (with C++ typename C), extracts 4-momentum and id of each collection member, and packs this up

end loop over handles

Definition at line 316 of file TriggerSummaryProducerAOD.cc.

References collectionTagsEvent_, edm::GetterOfProducts< T >::fillHandles(), fillTriggerObject(), i, instance, keys_, diffTwoXMLs::label, edm::Provenance::moduleLabel(), gen::n, offset_, sysUtil::pid, LaserDQM_cfg::process, edm::Provenance::processName(), edm::Provenance::productInstanceName(), dt_dqm_sourceclient_common_cff::reco, findQualityFiles::size, tags_, and toc_.

316  {
317 
321 
322  using namespace std;
323  using namespace edm;
324  using namespace reco;
325  using namespace l1extra;
326  using namespace trigger;
327 
328  vector<Handle<C> > collections;
329  getter.fillHandles(iEvent, collections);
330  const unsigned int nc(collections.size());
331 
332  for (unsigned int ic=0; ic!=nc; ++ic) {
333  const Provenance& provenance(*(collections[ic].provenance()));
334  const string& label (provenance.moduleLabel());
335  const string& instance (provenance.productInstanceName());
336  const string& process (provenance.processName());
337  const InputTag collectionTag(label,instance,process);
338 
339  if (collectionTagsEvent_.find(collectionTag)!=collectionTagsEvent_.end()) {
340  const ProductID pid(collections[ic].provenance()->productID());
341  if (offset_.find(pid)!=offset_.end()) {
342  LogError("TriggerSummaryProducerAOD") << "Duplicate pid!";
343  }
344  offset_[pid]=toc_.size();
345  const unsigned int n(collections[ic]->size());
346  for (unsigned int i=0; i!=n; ++i) {
347  fillTriggerObject( (*collections[ic])[i] );
348  }
349  tags_.push_back(collectionTag.encode());
350  keys_.push_back(toc_.size());
351  }
352 
353  }
354 }
int i
Definition: DBlmapReader.cc:9
trigger::TriggerObjectCollection toc_
trigger object collection
static PFTauRenderPlugin instance
std::vector< std::string > tags_
std::map< edm::ProductID, unsigned int > offset_
global map for indices into toc_: offset per input L3 collection
tuple pid
Definition: sysUtil.py:22
InputTagSet collectionTagsEvent_
list of L3 collection tags
void fillHandles(edm::Event const &event, std::vector< edm::Handle< T > > &handles) const
tuple process
Definition: LaserDQM_cfg.py:3
tuple size
Write out results.
void TriggerSummaryProducerAOD::globalEndJob ( const GlobalInputTags globalInputTags)
static

Definition at line 547 of file TriggerSummaryProducerAOD.cc.

References GlobalInputTags::collectionTagsGlobal_, HLT_25ns14e33_v1_cff::distance, benchmark_cfg::fb, and GlobalInputTags::filterTagsGlobal_.

547  {
548 
549  using namespace std;
550  using namespace edm;
551  using namespace trigger;
552 
553  LogVerbatim("TriggerSummaryProducerAOD") << endl;
554  LogVerbatim("TriggerSummaryProducerAOD") << "TriggerSummaryProducerAOD::globalEndJob - accumulated tags:" << endl;
555 
556  InputTagSet filterTags(false);
557  InputTagSet collectionTags(false);
558 
559  filterTags.insert(globalInputTags->filterTagsGlobal_.begin(),globalInputTags->filterTagsGlobal_.end());
560  collectionTags.insert(globalInputTags->collectionTagsGlobal_.begin(),globalInputTags->collectionTagsGlobal_.end());
561 
562  const unsigned int nc(collectionTags.size());
563  const unsigned int nf(filterTags.size());
564  LogVerbatim("TriggerSummaryProducerAOD") << " Overall number of Collections/Filters: "
565  << nc << "/" << nf << endl;
566 
567  LogVerbatim("TriggerSummaryProducerAOD") << " The collections: " << nc << endl;
568  const InputTagSet::const_iterator cb(collectionTags.begin());
569  const InputTagSet::const_iterator ce(collectionTags.end());
570  for ( InputTagSet::const_iterator ci=cb; ci!=ce; ++ci) {
571  LogVerbatim("TriggerSummaryProducerAOD") << " " << distance(cb,ci) << " " << ci->encode() << endl;
572  }
573 
574  LogVerbatim("TriggerSummaryProducerAOD") << " The filters:" << nf << endl;
575  const InputTagSet::const_iterator fb(filterTags.begin());
576  const InputTagSet::const_iterator fe(filterTags.end());
577  for ( InputTagSet::const_iterator fi=fb; fi!=fe; ++fi) {
578  LogVerbatim("TriggerSummaryProducerAOD") << " " << distance(fb,fi) << " " << fi->encode() << endl;
579  }
580 
581  LogVerbatim("TriggerSummaryProducerAOD") << "TriggerSummaryProducerAOD::endJob." << endl;
582  LogVerbatim("TriggerSummaryProducerAOD") << endl;
583 
584  return;
585 
586 }
std::set< edm::InputTag, OrderInputTag > InputTagSet
tbb::concurrent_unordered_set< edm::InputTag, InputTagHash > filterTagsGlobal_
tbb::concurrent_unordered_set< edm::InputTag, InputTagHash > collectionTagsGlobal_
static std::unique_ptr<GlobalInputTags> TriggerSummaryProducerAOD::initializeGlobalCache ( edm::ParameterSet const &  )
inlinestatic

Definition at line 92 of file TriggerSummaryProducerAOD.h.

92  {
93  return std::unique_ptr<GlobalInputTags> (new GlobalInputTags());
94  };
void TriggerSummaryProducerAOD::produce ( edm::Event iEvent,
const edm::EventSetup iSetup 
)
overridevirtual

check whether collection tags are recorded in filterobjects; if so, these are L3 collections to be packed up, and the corresponding filter is a L3 filter also to be packed up. Record the InputTags of those L3 filters and L3 collections.

check uniqueness count

accumulate for endJob printout

debug printout

event-by-event tags

Now the processing: first trigger objects from L3 collections, then L3 filter objects

create trigger objects, fill triggerobjectcollection and offset map

construct single AOD product, reserving capacity

fill trigger object collection

fill the L3 filter objects

Implements edm::stream::EDProducerBase.

Definition at line 165 of file TriggerSummaryProducerAOD.cc.

References collectionTagsEvent_, collectionTagsStream_, HLT_25ns14e33_v1_cff::distance, benchmark_cfg::fb, fillFilterObjectMembers(), edm::GetterOfProducts< T >::fillHandles(), filterTagsEvent_, filterTagsStream_, getCaloJetCollection_, getCaloMETCollection_, getCompositeCandidateCollection_, getElectronCollection_, getIsolatedPixelTrackCandidateCollection_, getL1EmParticleCollection_, getL1EtMissParticleCollection_, getL1HFRingsCollection_, getL1JetParticleCollection_, getL1MuonParticleCollection_, getMETCollection_, getPFJetCollection_, getPFTauCollection_, getRecoChargedCandidateCollection_, getRecoEcalCandidateCollection_, getTriggerFilterObjectWithRefs_, ids_, iEvent, HLT_25ns14e33_v1_cff::InputTag, instance, edm::isDebugEnabled(), keys_, diffTwoXMLs::label, LogDebug, LogTrace, maskFilters_, offset_, pn_, LaserDQM_cfg::process, FSQHLTOfflineSource_cfi::processName, edm::Event::put(), dt_dqm_sourceclient_common_cff::reco, tags_, and toc_.

166 {
167  using namespace std;
168  using namespace edm;
169  using namespace reco;
170  using namespace l1extra;
171  using namespace trigger;
172 
173  std::vector<edm::Handle<trigger::TriggerFilterObjectWithRefs> > fobs;
175 
176  const unsigned int nfob(fobs.size());
177  LogTrace("TriggerSummaryProducerAOD") << "Number of filter objects found: " << nfob;
178 
179  string tagLabel,tagInstance,tagProcess;
180 
186  maskFilters_.clear();
187  maskFilters_.resize(nfob);
188  filterTagsEvent_.clear();
189  collectionTagsEvent_.clear();
190  unsigned int nf(0);
191  for (unsigned int ifob=0; ifob!=nfob; ++ifob) {
192  maskFilters_[ifob]=false;
193  const vector<string>& collectionTags_(fobs[ifob]->getCollectionTagsAsStrings());
194  const unsigned int ncol(collectionTags_.size());
195  if (ncol>0) {
196  nf++;
197  maskFilters_[ifob]=true;
198  const string& label (fobs[ifob].provenance()->moduleLabel());
199  const string& instance (fobs[ifob].provenance()->productInstanceName());
200  const string& process (fobs[ifob].provenance()->processName());
202  for (unsigned int icol=0; icol!=ncol; ++icol) {
203  // overwrite process name (usually not set)
204  tokenizeTag(collectionTags_[icol],tagLabel,tagInstance,tagProcess);
205  collectionTagsEvent_.insert(InputTag(tagLabel,tagInstance,pn_));
206  }
207  }
208  }
210  if (filterTagsEvent_.size()!=nf) {
211  LogError("TriggerSummaryProducerAOD")
212  << "Mismatch in number of filter tags: "
213  << filterTagsEvent_.size() << "!=" << nf ;
214  }
215 
219 
221  if (isDebugEnabled()) {
222 
224  const unsigned int nc(collectionTagsEvent_.size());
225  LogTrace("TriggerSummaryProducerAOD") << "Number of unique collections requested " << nc;
226  const InputTagSet::const_iterator cb(collectionTagsEvent_.begin());
227  const InputTagSet::const_iterator ce(collectionTagsEvent_.end());
228  for ( InputTagSet::const_iterator ci=cb; ci!=ce; ++ci) {
229  LogTrace("TriggerSummaryProducerAOD") << distance(cb,ci) << " " << ci->encode();
230  }
231  const unsigned int nf(filterTagsEvent_.size());
232  LogTrace("TriggerSummaryProducerAOD") << "Number of unique filters requested " << nf;
233  const InputTagSet::const_iterator fb(filterTagsEvent_.begin());
234  const InputTagSet::const_iterator fe(filterTagsEvent_.end());
235  for ( InputTagSet::const_iterator fi=fb; fi!=fe; ++fi) {
236  LogTrace("TriggerSummaryProducerAOD") << distance(fb,fi) << " " << fi->encode();
237  }
238 
239  }
240 
246  toc_.clear();
247  tags_.clear();
248  keys_.clear();
249  offset_.clear();
250  fillTriggerObjectCollections< RecoEcalCandidateCollection>(iEvent, getRecoEcalCandidateCollection_);
251  fillTriggerObjectCollections< ElectronCollection>(iEvent, getElectronCollection_);
252  fillTriggerObjectCollections< RecoChargedCandidateCollection>(iEvent, getRecoChargedCandidateCollection_);
253  fillTriggerObjectCollections< CaloJetCollection>(iEvent, getCaloJetCollection_);
254  fillTriggerObjectCollections< CompositeCandidateCollection>(iEvent, getCompositeCandidateCollection_);
255  fillTriggerObjectCollections< METCollection>(iEvent, getMETCollection_);
256  fillTriggerObjectCollections< CaloMETCollection>(iEvent, getCaloMETCollection_);
257  fillTriggerObjectCollections<IsolatedPixelTrackCandidateCollection>(iEvent, getIsolatedPixelTrackCandidateCollection_);
259  fillTriggerObjectCollections< L1EmParticleCollection>(iEvent, getL1EmParticleCollection_);
260  fillTriggerObjectCollections< L1MuonParticleCollection>(iEvent, getL1MuonParticleCollection_);
261  fillTriggerObjectCollections< L1JetParticleCollection>(iEvent, getL1JetParticleCollection_);
262  fillTriggerObjectCollections< L1EtMissParticleCollection>(iEvent, getL1EtMissParticleCollection_);
263  fillTriggerObjectCollections< L1HFRingsCollection>(iEvent, getL1HFRingsCollection_);
265  fillTriggerObjectCollections< PFJetCollection>(iEvent, getPFJetCollection_);
266  fillTriggerObjectCollections< PFTauCollection>(iEvent, getPFTauCollection_);
268  const unsigned int nk(tags_.size());
269  LogDebug("TriggerSummaryProducerAOD") << "Number of collections found: " << nk;
270  const unsigned int no(toc_.size());
271  LogDebug("TriggerSummaryProducerAOD") << "Number of physics objects found: " << no;
272 
275  auto_ptr<TriggerEvent> product(new TriggerEvent(pn_,nk,no,nf));
276 
278  product->addCollections(tags_,keys_);
279  product->addObjects(toc_);
280 
282  for (unsigned int ifob=0; ifob!=nfob; ++ifob) {
283  if (maskFilters_[ifob]) {
284  const string& label (fobs[ifob].provenance()->moduleLabel());
285  const string& instance (fobs[ifob].provenance()->productInstanceName());
286  const string& process (fobs[ifob].provenance()->processName());
287  const edm::InputTag filterTag(label,instance,process);
288  ids_.clear();
289  keys_.clear();
290  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->photonIds() ,fobs[ifob]->photonRefs());
291  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->electronIds() ,fobs[ifob]->electronRefs());
292  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->muonIds() ,fobs[ifob]->muonRefs());
293  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->jetIds() ,fobs[ifob]->jetRefs());
294  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->compositeIds(),fobs[ifob]->compositeRefs());
295  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->basemetIds() ,fobs[ifob]->basemetRefs());
296  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->calometIds() ,fobs[ifob]->calometRefs());
297  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->pixtrackIds() ,fobs[ifob]->pixtrackRefs());
298  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->l1emIds() ,fobs[ifob]->l1emRefs());
299  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->l1muonIds() ,fobs[ifob]->l1muonRefs());
300  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->l1jetIds() ,fobs[ifob]->l1jetRefs());
301  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->l1etmissIds() ,fobs[ifob]->l1etmissRefs());
302  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->l1hfringsIds(),fobs[ifob]->l1hfringsRefs());
303  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->pfjetIds() ,fobs[ifob]->pfjetRefs());
304  fillFilterObjectMembers(iEvent,filterTag,fobs[ifob]->pftauIds() ,fobs[ifob]->pftauRefs());
305  product->addFilter(filterTag,ids_,keys_);
306  }
307  }
308 
309  OrphanHandle<TriggerEvent> ref = iEvent.put(product);
310  LogTrace("TriggerSummaryProducerAOD") << "Number of physics objects packed: " << ref->sizeObjects();
311  LogTrace("TriggerSummaryProducerAOD") << "Number of filter objects packed: " << ref->sizeFilters();
312 
313 }
#define LogDebug(id)
bool isDebugEnabled()
edm::GetterOfProducts< l1extra::L1JetParticleCollection > getL1JetParticleCollection_
edm::GetterOfProducts< reco::IsolatedPixelTrackCandidateCollection > getIsolatedPixelTrackCandidateCollection_
edm::GetterOfProducts< reco::RecoEcalCandidateCollection > getRecoEcalCandidateCollection_
edm::GetterOfProducts< l1extra::L1MuonParticleCollection > getL1MuonParticleCollection_
The single EDProduct to be saved for each event (AOD case)
Definition: TriggerEvent.h:25
trigger::TriggerObjectCollection toc_
trigger object collection
edm::GetterOfProducts< reco::PFTauCollection > getPFTauCollection_
static PFTauRenderPlugin instance
std::vector< bool > maskFilters_
packing decision
edm::GetterOfProducts< reco::METCollection > getMETCollection_
edm::GetterOfProducts< reco::CaloJetCollection > getCaloJetCollection_
edm::GetterOfProducts< l1extra::L1EtMissParticleCollection > getL1EtMissParticleCollection_
std::vector< std::string > tags_
edm::GetterOfProducts< reco::PFJetCollection > getPFJetCollection_
int iEvent
Definition: GenABIO.cc:230
edm::GetterOfProducts< reco::RecoChargedCandidateCollection > getRecoChargedCandidateCollection_
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
Definition: Event.h:113
edm::GetterOfProducts< l1extra::L1HFRingsCollection > getL1HFRingsCollection_
std::map< edm::ProductID, unsigned int > offset_
global map for indices into toc_: offset per input L3 collection
void fillFilterObjectMembers(const edm::Event &, const edm::InputTag &tag, const trigger::Vids &, const std::vector< edm::Ref< C > > &)
#define LogTrace(id)
edm::GetterOfProducts< reco::CaloMETCollection > getCaloMETCollection_
edm::GetterOfProducts< reco::ElectronCollection > getElectronCollection_
InputTagSet collectionTagsEvent_
list of L3 collection tags
void fillHandles(edm::Event const &event, std::vector< edm::Handle< T > > &handles) const
edm::GetterOfProducts< reco::CompositeCandidateCollection > getCompositeCandidateCollection_
edm::GetterOfProducts< trigger::TriggerFilterObjectWithRefs > getTriggerFilterObjectWithRefs_
InputTagSet filterTagsEvent_
list of L3 filter tags
tuple process
Definition: LaserDQM_cfg.py:3
edm::GetterOfProducts< l1extra::L1EmParticleCollection > getL1EmParticleCollection_

Member Data Documentation

InputTagSet TriggerSummaryProducerAOD::collectionTagsEvent_
private

list of L3 collection tags

Definition at line 145 of file TriggerSummaryProducerAOD.h.

Referenced by fillTriggerObjectCollections(), produce(), and TriggerSummaryProducerAOD().

InputTagSet TriggerSummaryProducerAOD::collectionTagsStream_
private

Definition at line 146 of file TriggerSummaryProducerAOD.h.

Referenced by endStream(), produce(), and TriggerSummaryProducerAOD().

InputTagSet TriggerSummaryProducerAOD::filterTagsEvent_
private

list of L3 filter tags

Definition at line 141 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

InputTagSet TriggerSummaryProducerAOD::filterTagsStream_
private

Definition at line 142 of file TriggerSummaryProducerAOD.h.

Referenced by endStream(), produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::CaloJetCollection> TriggerSummaryProducerAOD::getCaloJetCollection_
private

Definition at line 166 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::CaloMETCollection> TriggerSummaryProducerAOD::getCaloMETCollection_
private

Definition at line 169 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::CompositeCandidateCollection> TriggerSummaryProducerAOD::getCompositeCandidateCollection_
private

Definition at line 167 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::ElectronCollection> TriggerSummaryProducerAOD::getElectronCollection_
private

Definition at line 164 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::IsolatedPixelTrackCandidateCollection> TriggerSummaryProducerAOD::getIsolatedPixelTrackCandidateCollection_
private

Definition at line 170 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<l1extra::L1EmParticleCollection> TriggerSummaryProducerAOD::getL1EmParticleCollection_
private

Definition at line 171 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<l1extra::L1EtMissParticleCollection> TriggerSummaryProducerAOD::getL1EtMissParticleCollection_
private

Definition at line 174 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<l1extra::L1HFRingsCollection> TriggerSummaryProducerAOD::getL1HFRingsCollection_
private

Definition at line 175 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<l1extra::L1JetParticleCollection> TriggerSummaryProducerAOD::getL1JetParticleCollection_
private

Definition at line 173 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<l1extra::L1MuonParticleCollection> TriggerSummaryProducerAOD::getL1MuonParticleCollection_
private

Definition at line 172 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::METCollection> TriggerSummaryProducerAOD::getMETCollection_
private

Definition at line 168 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::PFJetCollection> TriggerSummaryProducerAOD::getPFJetCollection_
private

Definition at line 176 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::PFTauCollection> TriggerSummaryProducerAOD::getPFTauCollection_
private

Definition at line 177 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::RecoChargedCandidateCollection> TriggerSummaryProducerAOD::getRecoChargedCandidateCollection_
private

Definition at line 165 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<reco::RecoEcalCandidateCollection> TriggerSummaryProducerAOD::getRecoEcalCandidateCollection_
private

Definition at line 163 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

edm::GetterOfProducts<trigger::TriggerFilterObjectWithRefs> TriggerSummaryProducerAOD::getTriggerFilterObjectWithRefs_
private

Definition at line 162 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

trigger::Vids TriggerSummaryProducerAOD::ids_
private

ids

Definition at line 157 of file TriggerSummaryProducerAOD.h.

Referenced by fillFilterObjectMember(), and produce().

trigger::Keys TriggerSummaryProducerAOD::keys_
private
std::vector<bool> TriggerSummaryProducerAOD::maskFilters_
private

packing decision

Definition at line 160 of file TriggerSummaryProducerAOD.h.

Referenced by produce().

std::map<edm::ProductID,unsigned int> TriggerSummaryProducerAOD::offset_
private

global map for indices into toc_: offset per input L3 collection

Definition at line 152 of file TriggerSummaryProducerAOD.h.

Referenced by fillFilterObjectMembers(), fillTriggerObjectCollections(), and produce().

std::string TriggerSummaryProducerAOD::pn_
private

process name

Definition at line 118 of file TriggerSummaryProducerAOD.h.

Referenced by produce(), and TriggerSummaryProducerAOD().

std::vector<std::string> TriggerSummaryProducerAOD::tags_
private

Definition at line 150 of file TriggerSummaryProducerAOD.h.

Referenced by fillTriggerObjectCollections(), and produce().

trigger::TriggerObjectCollection TriggerSummaryProducerAOD::toc_
private

trigger object collection

Definition at line 149 of file TriggerSummaryProducerAOD.h.

Referenced by fillTriggerObject(), fillTriggerObjectCollections(), and produce().