#include <TtSemiLepHypKinFit.h>
Private Member Functions | |
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) override |
build event hypothesis from the reco objects of a semi-leptonic event More... | |
void | buildKey () override |
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 | |
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) |
static bool | wantsGlobalLuminosityBlocks () |
static bool | wantsGlobalRuns () |
static bool | wantsStreamLuminosityBlocks () |
static bool | wantsStreamRuns () |
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... | |
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... | |
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::ProducerBase | |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces () |
declare what type of product will make and with which optional label More... | |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces () |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces () |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<BranchType B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<Transition B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
ProducesCollector | producesCollector () |
Protected Member Functions inherited from edm::EDConsumerBase | |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (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 ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (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 3 of file TtSemiLepHypKinFit.cc.
|
override |
Definition at line 13 of file TtSemiLepHypKinFit.cc.
|
overrideprivatevirtual |
build event hypothesis from the reco objects of a semi-leptonic event
Implements TtSemiLepHypothesis.
Definition at line 15 of file TtSemiLepHypKinFit.cc.
References edm::Event::getByToken(), TtSemiLepHypothesis::hadronicB_, TtSemiLepHypothesis::lepton_, TtSemiLepHypothesis::leptonicB_, HLT_2018_cff::leptons, leptonsToken_, TtSemiLepHypothesis::lightQ_, TtSemiLepHypothesis::lightQBar_, match(), 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_.
|
inlineoverrideprivatevirtual |
build the event hypothesis key
Implements TtSemiLepHypothesis.
Definition at line 15 of file TtSemiLepHypKinFit.h.
References TtSemiLepHypothesis::key_, and TtEvent::kKinFit.
|
private |
Definition at line 29 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 30 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 27 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 25 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 26 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 28 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().
|
private |
Definition at line 24 of file TtSemiLepHypKinFit.h.
Referenced by buildHypo().