Template class to fill the TtEvent structure. More...
#include "TopQuarkAnalysis/TopEventProducers/interface/TtEvtBuilder.h"
Public Member Functions | |
TtEvtBuilder (const edm::ParameterSet &) | |
default constructor More... | |
~TtEvtBuilder () | |
default destructor More... | |
Public Member Functions inherited from edm::EDProducer | |
EDProducer () | |
ModuleDescription const & | moduleDescription () const |
virtual | ~EDProducer () |
Public Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
void | resolvePutIndicies (BranchType iBranchType, std::unordered_multimap< std::string, edm::ProductResolverIndex > const &iIndicies, std::string const &moduleLabel) |
virtual | ~ProducerBase () noexcept(false) |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () 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 |
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
virtual | ~EDConsumerBase () noexcept(false) |
Private Types | |
typedef std::vector< edm::EDGetTokenT< int > >::const_iterator | EventHypoIntToken |
typedef std::vector< edm::EDGetTokenT< std::vector< TtEvent::HypoCombPair > > >::const_iterator | EventHypoToken |
Private Member Functions | |
virtual void | fillSpecific (C &, const edm::Event &) |
fill data members that are decay-channel specific More... | |
template<> | |
void | fillSpecific (TtFullHadronicEvent &ttEvent, const edm::Event &evt) |
template<> | |
void | fillSpecific (TtFullLeptonicEvent &ttEvent, const edm::Event &evt) |
template<> | |
void | fillSpecific (TtSemiLeptonicEvent &ttEvent, const edm::Event &evt) |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
Additional Inherited Members | |
Public Types inherited from edm::EDProducer | |
typedef EDProducer | ModuleType |
Public Types inherited from edm::ProducerBase | |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::EDProducer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
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) |
Template class to fill the TtEvent structure.
Template class to fill the TtEvent structure for:
TtSemiLeptonicEvent TtFullLeptonicEvent TtFullHadronicEvent
event hypothesis, genEvent and extra information (if available) are read from the event and contracted into the TtEvent
Definition at line 30 of file TtEvtBuilder.h.
|
private |
Definition at line 56 of file TtEvtBuilder.h.
|
private |
Definition at line 57 of file TtEvtBuilder.h.
|
explicit |
default constructor
Definition at line 96 of file TtEvtBuilder.h.
References looper::cfg, TtEvtBuilder< C >::decayChnTop1_, TtEvtBuilder< C >::decayChnTop2_, TtEvtBuilder< C >::discToken_, TtEvtBuilder< C >::fitChi2Token_, TtEvtBuilder< C >::fitProbToken_, TtEvtBuilder< C >::genEvt_, TtEvtBuilder< C >::genEvtToken_, TtEvtBuilder< C >::genMatch_, edm::ParameterSet::getParameter(), TtEvtBuilder< C >::hitFit_, TtEvtBuilder< C >::hitFitChi2Token_, TtEvtBuilder< C >::hitFitMTToken_, TtEvtBuilder< C >::hitFitProbToken_, TtEvtBuilder< C >::hitFitSigMTToken_, TtEvtBuilder< C >::hypJetTokens_, TtEvtBuilder< C >::hypNeutrTokens_, TtEvtBuilder< C >::hypTokens_, TtEvtBuilder< C >::kinFit_, TtEvtBuilder< C >::kinSolution_, TtEvtBuilder< C >::methToken_, TtEvtBuilder< C >::mvaDisc_, TtEvtBuilder< C >::solWeightToken_, TtEvtBuilder< C >::sumDRToken_, TtEvtBuilder< C >::sumPtToken_, GlobalPosition_Frontier_DevDB_cff::tag, edm::vector_transform(), and TtEvtBuilder< C >::wrongChargeToken_.
|
inline |
default destructor
Definition at line 37 of file TtEvtBuilder.h.
References patCaloMETCorrections_cff::C, TtEvtBuilder< C >::fillSpecific(), and TtEvtBuilder< C >::produce().
|
privatevirtual |
fill data members that are decay-channel specific
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::~TtEvtBuilder().
|
private |
Definition at line 244 of file TtEvtBuilder.h.
|
private |
Definition at line 249 of file TtEvtBuilder.h.
References edm::Event::getByToken(), TtEvent::isHypoAvailable(), TtEvent::kKinSolution, TtFullLeptonicEvent::setSolWeight(), TtFullLeptonicEvent::setWrongCharge(), TtFullLepEvtBuilder_cfi::solWeight, TtEvtBuilder< C >::solWeightToken_, TtFullLepEvtBuilder_cfi::wrongCharge, and TtEvtBuilder< C >::wrongChargeToken_.
|
private |
Definition at line 266 of file TtEvtBuilder.h.
References edm::Event::getByToken(), TtEvtBuilder< C >::hypJetTokens_, TtEvtBuilder< C >::hypKeyTokens_, TtEvtBuilder< C >::hypNeutrTokens_, crabWrapper::key, TtEvent::setNumberOfConsideredJets(), and TtSemiLeptonicEvent::setNumberOfRealNeutrinoSolutions().
|
privatevirtual |
produce function (this one is not even accessible for derived classes)
Definition at line 149 of file TtEvtBuilder.h.
References patCaloMETCorrections_cff::C, TtEvtBuilder< C >::decayChnTop1_, TtEvtBuilder< C >::decayChnTop2_, TtSemiLepEvtBuilder_cfi::disc, TtEvtBuilder< C >::discToken_, TtEvtBuilder< C >::fillSpecific(), fitChi2(), TtEvtBuilder< C >::fitChi2Token_, TtEvtBuilder< C >::fitProbToken_, TtGenEvtProducer_cfi::genEvt, TtEvtBuilder< C >::genEvt_, TtEvtBuilder< C >::genEvtToken_, edm::Event::getByToken(), h, TtEvtBuilder< C >::hitFitChi2Token_, TtEvtBuilder< C >::hitFitMTToken_, TtEvtBuilder< C >::hitFitProbToken_, TtEvtBuilder< C >::hitFitSigMTToken_, TtEvtBuilder< C >::hypKeyTokens_, TtEvtBuilder< C >::hypTokens_, crabWrapper::key, TtEvent::kGenMatch, TtEvent::kHitFit, TtEvent::kKinFit, TtEvent::kMVADisc, edm::InputTag::label(), TtSemiLepEvtBuilder_cfi::meth, TtEvtBuilder< C >::methToken_, eostools::move(), edm::Event::put(), TtFullHadEvtBuilder_cfi::sumDR, TtEvtBuilder< C >::sumDRToken_, TtFullHadEvtBuilder_cfi::sumPt, TtEvtBuilder< C >::sumPtToken_, and TtEvtBuilder< C >::verbosity_.
Referenced by TtEvtBuilder< C >::~TtEvtBuilder().
|
private |
decay channels of the two top decay branches; to be filled according to WDecay::LeptonTypes in TtGenEvent
Definition at line 63 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 64 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 92 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 69 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 70 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 59 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 60 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
input parameters for the kGenMatch hypothesis class extras
Definition at line 85 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::TtEvtBuilder().
|
private |
input parameters for the kHitFit hypothesis class extras
Definition at line 73 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 74 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 76 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 75 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 77 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 55 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::fillSpecific(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
vector of hypothesis class names
Definition at line 52 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::fillSpecific(), and TtEvtBuilder< C >::produce().
|
private |
Definition at line 54 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::fillSpecific(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 53 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
input parameters for the kKinFit hypothesis class extras
Definition at line 68 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::TtEvtBuilder().
|
private |
input parameters for the kKinSolution hypothesis class extras
Definition at line 80 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 91 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
input parameters for the kMVADisc hypothesis class extras
Definition at line 90 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 81 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::fillSpecific(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 87 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
Definition at line 86 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce(), and TtEvtBuilder< C >::TtEvtBuilder().
|
private |
vebosity level
Definition at line 50 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::produce().
|
private |
Definition at line 82 of file TtEvtBuilder.h.
Referenced by TtEvtBuilder< C >::fillSpecific(), and TtEvtBuilder< C >::TtEvtBuilder().