#include <TtFullLepHypothesis.h>
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::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 = InEvent> | |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
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<Transition Tr = Transition::Event> | |
constexpr auto | esConsumes () noexcept |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag tag) noexcept |
template<Transition Tr = Transition::Event> | |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
Used with EventSetupRecord::doGet. More... | |
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 | |
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) |
static bool | wantsGlobalLuminosityBlocks () |
static bool | wantsGlobalRuns () |
static bool | wantsInputProcessBlocks () |
static bool | wantsProcessBlocks () |
static bool | wantsStreamLuminosityBlocks () |
static bool | wantsStreamRuns () |
Definition at line 34 of file TtFullLepHypothesis.h.
|
explicit |
default constructor
Definition at line 5 of file TtFullLepHypothesis.cc.
References looper::cfg, getMatch_, jetCorrectionLevel_, matchToken_, and AlCaHLTBitMon_QueryRunRegistry::string.
|
override |
default destructor
Definition at line 34 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.
Referenced by produce().
|
protectedpure virtual |
build the event hypothesis key
Implemented in TtFullLepHypGenMatch, and TtFullLepHypKinSolution.
Referenced by produce().
|
protected |
return event hypothesis
Definition at line 113 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(), TtFullHadDaughter::Top, TtFullLepDaughter::Top, TtFullLepDaughter::TopBar, TtFullHadDaughter::TopBar, TtFullLepDaughter::WMinus, TtFullHadDaughter::WMinus, TtFullHadDaughter::WPlus, and TtFullLepDaughter::WPlus.
Referenced by produce().
|
inlineprotected |
check if index is in valid range of selected jets
Definition at line 59 of file TtFullLepHypothesis.h.
References heavyIonCSV_trainingSettings::idx, and singleTopDQM_cfi::jets.
Referenced by ntupleDataFormat._Object::_checkIsValid(), TtFullLepHypGenMatch::buildHypo(), and core.AutoHandle.AutoHandle::ReallyLoad().
|
inlineprotected |
|
overrideprotectedvirtual |
produce the event hypothesis as CompositeCandidate and Key
Implements edm::EDProducer.
Definition at line 51 of file TtFullLepHypothesis.cc.
References buildHypo(), buildKey(), singleTopDQM_cfi::elecs, elecsToken_, edm::Event::getByToken(), getMatch_, hypo(), mps_fire::i, singleTopDQM_cfi::jets, jetsToken_, key(), match(), matchToken_, singleTopDQM_cfi::mets, metsToken_, eostools::move(), musToken_, edm::Event::put(), resetCandidates(), and trackerHitRTTI::vector.
|
protected |
reset candidate pointers before hypo build process
Definition at line 102 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 112 of file TtFullLepHypothesis.h.
References clone(), patZpeak::handle, and heavyIonCSV_trainingSettings::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(), clone(), pat::Jet::correctedJet(), patZpeak::handle, heavyIonCSV_trainingSettings::idx, jetCorrectionLevel_, reco::LeafCandidate::p4(), and reco::LeafCandidate::vertex().
|
protected |
Definition at line 98 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
Definition at line 99 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
Definition at line 85 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 82 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 91 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), setCandidate(), and TtFullLepHypothesis().
|
protected |
Definition at line 87 of file TtFullLepHypothesis.h.
Referenced by produce().
|
protected |
hypothesis key (to be set by the buildKey function)
Definition at line 93 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 96 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
Definition at line 97 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), TtFullLepHypGenMatch::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
input label for all necessary collections
Definition at line 84 of file TtFullLepHypothesis.h.
Referenced by produce(), and TtFullLepHypothesis().
|
protected |
Definition at line 88 of file TtFullLepHypothesis.h.
Referenced by produce().
|
protected |
Definition at line 86 of file TtFullLepHypothesis.h.
Referenced by produce().
|
protected |
Definition at line 100 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
Definition at line 101 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypKinSolution::buildHypo(), hypo(), resetCandidates(), and ~TtFullLepHypothesis().
|
protected |
candidates needed for the genmatch hypothesis
Definition at line 105 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypGenMatch::buildMatchingNeutrinos(), and hypo().
|
protected |
Definition at line 106 of file TtFullLepHypothesis.h.
Referenced by TtFullLepHypGenMatch::buildMatchingNeutrinos(), and hypo().