Template class to fill the TtEvent structure. More...
#include "TopQuarkAnalysis/TopEventProducers/interface/TtEvtBuilder.h"
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) |
void | produce (edm::Event &, const edm::EventSetup &) override |
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 () |
Protected Member Functions inherited from edm::ProducerBase | |
ProducesCollector | producesCollector () |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
template<BranchType B = InEvent> | |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
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 ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<Transition Tr = Transition::Event> | |
constexpr auto | esConsumes () noexcept |
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... | |
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) |
void | resetItemsToGetFrom (BranchType iType) |
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 33 of file TtEvtBuilder.h.
|
private |
Definition at line 55 of file TtEvtBuilder.h.
|
private |
Definition at line 56 of file TtEvtBuilder.h.
|
explicit |
default constructor
Definition at line 95 of file TtEvtBuilder.h.
References HLT_FULL_cff::InputTag, and GlobalPosition_Frontier_DevDB_cff::tag.
|
inlineoverride |
|
privatevirtual |
fill data members that are decay-channel specific
|
inlineprivate |
Definition at line 251 of file TtEvtBuilder.h.
|
inlineprivate |
Definition at line 254 of file TtEvtBuilder.h.
References edm::Event::getByToken(), TtEvent::isHypoAvailable(), TtEvent::kKinSolution, TtFullLeptonicEvent::setSolWeight(), and TtFullLeptonicEvent::setWrongCharge().
|
inlineprivate |
Definition at line 268 of file TtEvtBuilder.h.
References edm::Event::getByToken(), hypJetTokens_(), hypNeutrTokens_(), submitPVResolutionJobs::key, TtEvent::setNumberOfConsideredJets(), and TtSemiLeptonicEvent::setNumberOfRealNeutrinoSolutions().
|
overrideprivatevirtual |
produce function (this one is not even accessible for derived classes)
Implements edm::EDProducer.
Definition at line 157 of file TtEvtBuilder.h.
References gen::C, decayChnTop1_(), decayChnTop2_(), fitChi2(), TtGenEvtProducer_cfi::genEvt, genEvt_(), genEvtToken_(), edm::Event::getByToken(), h, hypTokens_(), submitPVResolutionJobs::key, TtEvent::kGenMatch, TtEvent::kHitFit, TtEvent::kKinFit, TtEvent::kMVADisc, eostools::move(), and edm::Event::put().
|
private |
decay channels of the two top decay branches; to be filled according to WDecay::LeptonTypes in TtGenEvent
Definition at line 62 of file TtEvtBuilder.h.
|
private |
Definition at line 63 of file TtEvtBuilder.h.
|
private |
Definition at line 91 of file TtEvtBuilder.h.
|
private |
Definition at line 68 of file TtEvtBuilder.h.
|
private |
Definition at line 69 of file TtEvtBuilder.h.
|
private |
Definition at line 58 of file TtEvtBuilder.h.
|
private |
Definition at line 59 of file TtEvtBuilder.h.
|
private |
input parameters for the kGenMatch hypothesis class extras
Definition at line 84 of file TtEvtBuilder.h.
|
private |
input parameters for the kHitFit hypothesis class extras
Definition at line 72 of file TtEvtBuilder.h.
|
private |
Definition at line 73 of file TtEvtBuilder.h.
|
private |
Definition at line 75 of file TtEvtBuilder.h.
|
private |
Definition at line 74 of file TtEvtBuilder.h.
|
private |
Definition at line 76 of file TtEvtBuilder.h.
|
private |
Definition at line 54 of file TtEvtBuilder.h.
|
private |
vector of hypothesis class names
Definition at line 51 of file TtEvtBuilder.h.
|
private |
Definition at line 53 of file TtEvtBuilder.h.
|
private |
Definition at line 52 of file TtEvtBuilder.h.
|
private |
input parameters for the kKinFit hypothesis class extras
Definition at line 67 of file TtEvtBuilder.h.
|
private |
input parameters for the kKinSolution hypothesis class extras
Definition at line 79 of file TtEvtBuilder.h.
|
private |
Definition at line 90 of file TtEvtBuilder.h.
|
private |
input parameters for the kMVADisc hypothesis class extras
Definition at line 89 of file TtEvtBuilder.h.
|
private |
Definition at line 80 of file TtEvtBuilder.h.
|
private |
Definition at line 86 of file TtEvtBuilder.h.
|
private |
Definition at line 85 of file TtEvtBuilder.h.
|
private |
vebosity level
Definition at line 49 of file TtEvtBuilder.h.
|
private |
Definition at line 81 of file TtEvtBuilder.h.