#include <TtFullLepHypothesis.h>
Public Member Functions | |
TtFullLepHypothesis (const edm::ParameterSet &) | |
default constructor More... | |
~TtFullLepHypothesis () override | |
default destructor More... | |
Public Member Functions inherited from edm::EDProducer | |
EDProducer () | |
ModuleDescription const & | moduleDescription () const |
~EDProducer () override | |
Public Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
ProducerBase () | |
std::vector< edm::ProductResolverIndex > const & | putTokenIndexToProductResolverIndex () const |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
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) |
Protected Member Functions | |
virtual void | buildHypo (edm::Event &evt, const edm::Handle< std::vector< pat::Electron > > &elecs, const edm::Handle< std::vector< pat::Muon > > &mus, const edm::Handle< std::vector< pat::Jet > > &jets, const edm::Handle< std::vector< pat::MET > > &mets, std::vector< int > &match, const unsigned int iComb)=0 |
build event hypothesis from the reco objects of a semi-leptonic event More... | |
virtual void | buildKey ()=0 |
build the event hypothesis key More... | |
reco::CompositeCandidate | hypo () |
return event hypothesis More... | |
bool | isValid (const int &idx, const edm::Handle< std::vector< pat::Jet > > &jets) |
check if index is in valid range of selected jets More... | |
int | key () const |
return key More... | |
void | produce (edm::Event &, const edm::EventSetup &) override |
produce the event hypothesis as CompositeCandidate and Key More... | |
void | resetCandidates () |
reset candidate pointers before hypo build process More... | |
template<typename C > | |
void | setCandidate (const edm::Handle< C > &handle, const int &idx, reco::ShallowClonePtrCandidate *&clone) |
use one object in a collection to set a ShallowClonePtrCandidate More... | |
void | setCandidate (const edm::Handle< std::vector< pat::Jet > > &handle, const int &idx, reco::ShallowClonePtrCandidate *&clone, const std::string &correctionLevel) |
use one object in a jet collection to set a ShallowClonePtrCandidate with proper jet corrections More... | |
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) |
Protected Attributes | |
reco::ShallowClonePtrCandidate * | b_ |
reco::ShallowClonePtrCandidate * | bBar_ |
edm::EDGetTokenT< std::vector< pat::Electron > > | elecsToken_ |
bool | getMatch_ |
std::string | jetCorrectionLevel_ |
edm::EDGetTokenT< std::vector< pat::Jet > > | jetsToken_ |
int | key_ |
hypothesis key (to be set by the buildKey function) More... | |
reco::ShallowClonePtrCandidate * | lepton_ |
reco::ShallowClonePtrCandidate * | leptonBar_ |
edm::EDGetTokenT< std::vector< std::vector< int > > > | matchToken_ |
input label for all necessary collections More... | |
edm::EDGetTokenT< std::vector< pat::MET > > | metsToken_ |
edm::EDGetTokenT< std::vector< pat::Muon > > | musToken_ |
reco::ShallowClonePtrCandidate * | neutrino_ |
reco::ShallowClonePtrCandidate * | neutrinoBar_ |
reco::LeafCandidate * | recNu |
candidates needed for the genmatch hypothesis More... | |
reco::LeafCandidate * | recNuBar |
Additional Inherited Members | |
Public Types inherited from edm::EDProducer | |
typedef EDProducer | ModuleType |
Public Types inherited from edm::ProducerBase | |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >> |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::EDProducer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Definition at line 34 of file TtFullLepHypothesis.h.
|
explicit |
default constructor
Definition at line 5 of file TtFullLepHypothesis.cc.
References edm::ParameterSet::exists(), getMatch_, edm::ParameterSet::getParameter(), jetCorrectionLevel_, matchToken_, and AlCaHLTBitMon_QueryRunRegistry::string.
|
override |
default destructor
Definition at line 32 of file TtFullLepHypothesis.cc.
References b_, bBar_, lepton_, leptonBar_, neutrino_, and neutrinoBar_.
|
protectedpure virtual |
build event hypothesis from the reco objects of a semi-leptonic event
Implemented in TtFullLepHypGenMatch, and TtFullLepHypKinSolution.
|
protectedpure virtual |
build the event hypothesis key
Implemented in TtFullLepHypGenMatch, and TtFullLepHypKinSolution.
|
protected |
return event hypothesis
Definition at line 111 of file TtFullLepHypothesis.cc.
References reco::CompositeCandidate::addDaughter(), TtFullLepDaughter::B, b_, TtFullLepDaughter::BBar, bBar_, key(), TtEvent::kGenMatch, TtEvent::kKinSolution, TtFullLepDaughter::Lep, TtFullLepDaughter::LepBar, lepton_, leptonBar_, neutrino_, neutrinoBar_, TtFullLepDaughter::Nu, TtFullLepDaughter::NuBar, recNu, recNuBar, AddFourMomenta::set(), TtFullLepDaughter::Top, TtFullHadDaughter::Top, TtFullLepDaughter::TopBar, TtFullHadDaughter::TopBar, TtFullHadDaughter::WMinus, TtFullLepDaughter::WMinus, TtFullHadDaughter::WPlus, and TtFullLepDaughter::WPlus.
Referenced by key(), and produce().
|
inlineprotected |
check if index is in valid range of selected jets
Definition at line 57 of file TtFullLepHypothesis.h.
References buildHypo(), buildKey(), PatTopSelectionAnalyzer_cfi::elecs, fwrapper::jets, match(), and TtSemiLepSignalSelMVAComputer_cfi::mets.
Referenced by ntupleDataFormat._Object::_checkIsValid(), TtFullLepHypGenMatch::buildHypo(), and core.AutoHandle.AutoHandle::ReallyLoad().
|
inlineprotected |
return key
Definition at line 53 of file TtFullLepHypothesis.h.
Referenced by hypo(), and produce().
|
overrideprotected |
produce the event hypothesis as CompositeCandidate and Key
Definition at line 45 of file TtFullLepHypothesis.cc.
References buildHypo(), buildKey(), PatTopSelectionAnalyzer_cfi::elecs, elecsToken_, edm::Event::getByToken(), getMatch_, hypo(), mps_fire::i, fwrapper::jets, jetsToken_, key(), match(), matchToken_, TtSemiLepSignalSelMVAComputer_cfi::mets, metsToken_, eostools::move(), musToken_, edm::Event::put(), and resetCandidates().
|
protected |
reset candidate pointers before hypo build process
Definition at line 98 of file TtFullLepHypothesis.cc.
References b_, bBar_, lepton_, leptonBar_, neutrino_, and neutrinoBar_.
Referenced by produce().
|
protected |
use one object in a collection to set a ShallowClonePtrCandidate
Definition at line 109 of file TtFullLepHypothesis.h.
References cmsBatch::handle, and training_settings::idx.
Referenced by TtFullLepHypKinSolution::buildHypo(), and TtFullLepHypGenMatch::buildHypo().
|
protected |
use one object in a jet collection to set a ShallowClonePtrCandidate with proper jet corrections
Definition at line 167 of file TtFullLepHypothesis.cc.
References reco::LeafCandidate::charge(), pat::Jet::correctedJet(), cmsBatch::handle, training_settings::idx, jetCorrectionLevel_, reco::LeafCandidate::p4(), and reco::LeafCandidate::vertex().
|
protected |
Definition at line 94 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
Definition at line 95 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
Definition at line 81 of file TtFullLepHypothesis.h.
Referenced by produce().
|
protected |
internal check whether the match information exists or not, if false a blind dummy match vector will be used internally
Definition at line 78 of file TtFullLepHypothesis.h.
Referenced by produce(), and TtFullLepHypothesis().
|
protected |
specify the desired jet correction level (the default should be L3Absolute-'abs')
Definition at line 87 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), setCandidate(), and TtFullLepHypothesis().
|
protected |
Definition at line 83 of file TtFullLepHypothesis.h.
Referenced by produce().
|
protected |
hypothesis key (to be set by the buildKey function)
Definition at line 89 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildKey(), TtFullLepHypGenMatch::buildKey(), and key().
|
protected |
candidates for internal use for the creation of the hypothesis candidate
Definition at line 92 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
Definition at line 93 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
input label for all necessary collections
Definition at line 80 of file TtFullLepHypothesis.h.
Referenced by produce(), and TtFullLepHypothesis().
|
protected |
Definition at line 84 of file TtFullLepHypothesis.h.
Referenced by produce().
|
protected |
Definition at line 82 of file TtFullLepHypothesis.h.
Referenced by produce().
|
protected |
Definition at line 96 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
Definition at line 97 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
candidates needed for the genmatch hypothesis
Definition at line 101 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypGenMatch::buildMatchingNeutrinos(), and hypo().
|
protected |
Definition at line 102 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypGenMatch::buildMatchingNeutrinos(), and hypo().