#include <TtSemiLepHypKinFit.h>
Public Member Functions | |
TtSemiLepHypKinFit (const edm::ParameterSet &) | |
~TtSemiLepHypKinFit () | |
Public Member Functions inherited from TtSemiLepHypothesis | |
TtSemiLepHypothesis (const edm::ParameterSet &) | |
default constructor More... | |
~TtSemiLepHypothesis () | |
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 Member Functions | |
virtual void | buildHypo (edm::Event &, const edm::Handle< edm::View< reco::RecoCandidate > > &, const edm::Handle< std::vector< pat::MET > > &, const edm::Handle< std::vector< pat::Jet > > &, std::vector< int > &, const unsigned int iComb) |
build event hypothesis from the reco objects of a semi-leptonic event More... | |
virtual void | buildKey () |
build the event hypothesis key More... | |
Private Attributes | |
edm::EDGetTokenT< std::vector< pat::Particle > > | leptonsToken_ |
edm::EDGetTokenT< std::vector< pat::Particle > > | neutrinosToken_ |
edm::EDGetTokenT< std::vector< pat::Particle > > | partonsHadBToken_ |
edm::EDGetTokenT< std::vector< pat::Particle > > | partonsHadPToken_ |
edm::EDGetTokenT< std::vector< pat::Particle > > | partonsHadQToken_ |
edm::EDGetTokenT< std::vector< pat::Particle > > | partonsLepBToken_ |
edm::EDGetTokenT< std::vector< int > > | statusToken_ |
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 TtSemiLepHypothesis | |
void | buildHypo (const edm::Handle< edm::View< reco::RecoCandidate > > &leps, const edm::Handle< std::vector< pat::MET > > &mets, const edm::Handle< std::vector< pat::Jet > > &jets, std::vector< int > &jetPartonAssociation) |
minimalistic build function for simple hypotheses 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... | |
std::string | jetCorrectionLevel (const std::string &quarkType) |
helper function to construct the proper correction level string for corresponding quarkType More... | |
int | key () const |
WDecay::LeptonType | leptonType (const reco::RecoCandidate *cand) |
determine lepton type of reco candidate and return a corresponding WDecay::LeptonType; the type is kNone if it is whether a muon nor an electron More... | |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
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... | |
void | setNeutrino (const edm::Handle< std::vector< pat::MET > > &met, const edm::Handle< edm::View< reco::RecoCandidate > > &leps, const int &idx, const int &type) |
set neutrino, using mW = 80.4 to calculate the neutrino pz 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 inherited from TtSemiLepHypothesis | |
bool | getMatch_ |
reco::ShallowClonePtrCandidate * | hadronicB_ |
std::string | jetCorrectionLevel_ |
edm::EDGetTokenT< std::vector< pat::Jet > > | jetsToken_ |
input label for all necessary collections More... | |
int | key_ |
hypothesis key (to be set by the buildKey function) More... | |
edm::EDGetTokenT< edm::View< reco::RecoCandidate > > | lepsToken_ |
reco::ShallowClonePtrCandidate * | lepton_ |
reco::ShallowClonePtrCandidate * | leptonicB_ |
reco::ShallowClonePtrCandidate * | lightQ_ |
reco::ShallowClonePtrCandidate * | lightQBar_ |
edm::EDGetTokenT< std::vector< std::vector< int > > > | matchToken_ |
edm::EDGetTokenT< std::vector< pat::MET > > | metsToken_ |
reco::ShallowClonePtrCandidate * | neutrino_ |
int | neutrinoSolutionType_ |
algorithm used to calculate neutrino solutions (see cfi for further details) More... | |
edm::EDGetTokenT< int > | nJetsConsideredToken_ |
int | numberOfRealNeutrinoSolutions_ |
Definition at line 8 of file TtSemiLepHypKinFit.h.
|
explicit |
Definition at line 4 of file TtSemiLepHypKinFit.cc.
TtSemiLepHypKinFit::~TtSemiLepHypKinFit | ( | ) |
Definition at line 16 of file TtSemiLepHypKinFit.cc.
|
privatevirtual |
build event hypothesis from the reco objects of a semi-leptonic event
Implements TtSemiLepHypothesis.
Definition at line 19 of file TtSemiLepHypKinFit.cc.
References edm::Event::getByToken(), TtSemiLepHypothesis::hadronicB_, TtSemiLepHypothesis::lepton_, TtSemiLepHypothesis::leptonicB_, AK4PFJetsMCFlavourInfos_cfi::leptons, leptonsToken_, TtSemiLepHypothesis::lightQ_, TtSemiLepHypothesis::lightQBar_, TtSemiLepHypothesis::neutrino_, TtSemiLepHypHitFit_cfi::neutrinos, neutrinosToken_, TtSemiLepHypHitFit_cfi::partonsHadB, partonsHadBToken_, TtSemiLepHypHitFit_cfi::partonsHadP, partonsHadPToken_, TtSemiLepHypHitFit_cfi::partonsHadQ, partonsHadQToken_, TtSemiLepHypHitFit_cfi::partonsLepB, partonsLepBToken_, TtSemiLepHypothesis::setCandidate(), mps_update::status, and statusToken_.
Referenced by buildKey().
|
inlineprivatevirtual |
build the event hypothesis key
Implements TtSemiLepHypothesis.
Definition at line 18 of file TtSemiLepHypKinFit.h.
References buildHypo(), TtSemiLepHypothesis::key_, and TtEvent::kKinFit.
|
private |
Definition at line 31 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 32 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 29 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 27 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 28 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 30 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 26 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().