CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
TtFullLepHypothesis Class Referenceabstract

#include <TtFullLepHypothesis.h>

Inheritance diagram for TtFullLepHypothesis:
edm::EDProducer edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper TtFullLepHypGenMatch TtFullLepHypKinSolution

Public Member Functions

 TtFullLepHypothesis (const edm::ParameterSet &)
 default constructor More...
 
 ~TtFullLepHypothesis () override
 default destructor More...
 
- Public Member Functions inherited from edm::EDProducer
 EDProducer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
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
 
std::vector< bool > const & recordProvenanceList () 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)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
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
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
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::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

reco::ShallowClonePtrCandidateb_
 
reco::ShallowClonePtrCandidatebBar_
 
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::ShallowClonePtrCandidatelepton_
 
reco::ShallowClonePtrCandidateleptonBar_
 
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::ShallowClonePtrCandidateneutrino_
 
reco::ShallowClonePtrCandidateneutrinoBar_
 
reco::LeafCandidaterecNu
 candidates needed for the genmatch hypothesis More...
 
reco::LeafCandidaterecNuBar
 

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 ()
 

Detailed Description

Definition at line 34 of file TtFullLepHypothesis.h.

Constructor & Destructor Documentation

◆ TtFullLepHypothesis()

TtFullLepHypothesis::TtFullLepHypothesis ( const edm::ParameterSet cfg)
explicit

default constructor

Definition at line 5 of file TtFullLepHypothesis.cc.

6  : elecsToken_(consumes<std::vector<pat::Electron> >(cfg.getParameter<edm::InputTag>("electrons"))),
7  musToken_(consumes<std::vector<pat::Muon> >(cfg.getParameter<edm::InputTag>("muons"))),
8  jetsToken_(consumes<std::vector<pat::Jet> >(cfg.getParameter<edm::InputTag>("jets"))),
9  metsToken_(consumes<std::vector<pat::MET> >(cfg.getParameter<edm::InputTag>("mets"))),
10 
11  lepton_(nullptr),
12  leptonBar_(nullptr),
13  b_(nullptr),
14  bBar_(nullptr),
15  neutrino_(nullptr),
16  neutrinoBar_(nullptr) {
17  getMatch_ = false;
18  if (cfg.exists("match")) {
19  getMatch_ = true;
20  matchToken_ = consumes<std::vector<std::vector<int> > >(cfg.getParameter<edm::InputTag>("match"));
21  }
22  // if no other correction is given apply L3 (abs) correction
23  jetCorrectionLevel_ = "abs";
24  if (cfg.exists("jetCorrectionLevel")) {
25  jetCorrectionLevel_ = cfg.getParameter<std::string>("jetCorrectionLevel");
26  } else { // if no other correction is given apply L3 (abs) correction
27  jetCorrectionLevel_ = "abs";
28  }
29  produces<std::vector<std::pair<reco::CompositeCandidate, std::vector<int> > > >();
30  produces<int>("Key");
31 }

References looper::cfg, getMatch_, jetCorrectionLevel_, matchToken_, and AlCaHLTBitMon_QueryRunRegistry::string.

◆ ~TtFullLepHypothesis()

TtFullLepHypothesis::~TtFullLepHypothesis ( )
override

default destructor

Definition at line 34 of file TtFullLepHypothesis.cc.

34  {
35  if (lepton_)
36  delete lepton_;
37  if (leptonBar_)
38  delete leptonBar_;
39  if (b_)
40  delete b_;
41  if (bBar_)
42  delete bBar_;
43  if (neutrino_)
44  delete neutrino_;
45  if (neutrinoBar_)
46  delete neutrinoBar_;
47  //if( met_ ) delete met_;
48 }

References b_, bBar_, lepton_, leptonBar_, neutrino_, and neutrinoBar_.

Member Function Documentation

◆ buildHypo()

virtual void TtFullLepHypothesis::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 
)
protectedpure virtual

build event hypothesis from the reco objects of a semi-leptonic event

Implemented in TtFullLepHypGenMatch, and TtFullLepHypKinSolution.

Referenced by produce().

◆ buildKey()

virtual void TtFullLepHypothesis::buildKey ( )
protectedpure virtual

build the event hypothesis key

Implemented in TtFullLepHypGenMatch, and TtFullLepHypKinSolution.

Referenced by produce().

◆ hypo()

reco::CompositeCandidate TtFullLepHypothesis::hypo ( )
protected

return event hypothesis

Definition at line 113 of file TtFullLepHypothesis.cc.

113  {
114  // check for sanity of the hypothesis
115  if (!lepton_ || !leptonBar_ || !b_ || !bBar_) {
116  return reco::CompositeCandidate();
117  }
118 
119  if (key() == TtFullLeptonicEvent::kGenMatch && (!recNu || !recNuBar)) {
120  edm::LogInfo("TtFullHypothesis") << "no neutrinos for gen match" << std::endl;
121  return reco::CompositeCandidate();
122  }
124  edm::LogInfo("TtFullHypothesis") << "no neutrinos for kin solution" << std::endl;
125  return reco::CompositeCandidate();
126  }
127 
128  // setup transient references
130 
131  AddFourMomenta addFourMomenta;
132 
133  // build up the top branch
136  WPlus.addDaughter(*neutrino_, TtFullLepDaughter::Nu);
137  else if (key() == TtFullLeptonicEvent::kGenMatch)
138  WPlus.addDaughter(*recNu, TtFullLepDaughter::Nu);
139  addFourMomenta.set(WPlus);
140  Top.addDaughter(WPlus, TtFullLepDaughter::WPlus);
141  Top.addDaughter(*b_, TtFullLepDaughter::B);
142  addFourMomenta.set(Top);
143 
144  // build up the anti top branch
145  WMinus.addDaughter(*lepton_, TtFullLepDaughter::Lep);
148  else if (key() == TtFullLeptonicEvent::kGenMatch)
150  addFourMomenta.set(WMinus);
152  TopBar.addDaughter(*bBar_, TtFullLepDaughter::BBar);
153  addFourMomenta.set(TopBar);
154 
155  // build ttbar hypothesis
158  addFourMomenta.set(hyp);
159 
160  // the four momentum of the met is not added to the hypothesis
161  // because it is allready included through the neutrinos
162  //hyp.addDaughter(*met_, TtFullLepDaughter::Met);
163  return hyp;
164 }

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().

◆ isValid()

bool TtFullLepHypothesis::isValid ( const int &  idx,
const edm::Handle< std::vector< pat::Jet > > &  jets 
)
inlineprotected

check if index is in valid range of selected jets

Definition at line 59 of file TtFullLepHypothesis.h.

59  {
60  return (0 <= idx && idx < (int)jets->size());
61  };

References training_settings::idx, and singleTopDQM_cfi::jets.

Referenced by ntupleDataFormat._Object::_checkIsValid(), TtFullLepHypGenMatch::buildHypo(), and core.AutoHandle.AutoHandle::ReallyLoad().

◆ key()

int TtFullLepHypothesis::key ( ) const
inlineprotected

return key

Definition at line 55 of file TtFullLepHypothesis.h.

55 { return key_; };

References key_.

Referenced by hypo(), and produce().

◆ produce()

void TtFullLepHypothesis::produce ( edm::Event evt,
const edm::EventSetup setup 
)
overrideprotectedvirtual

produce the event hypothesis as CompositeCandidate and Key

Implements edm::EDProducer.

Definition at line 51 of file TtFullLepHypothesis.cc.

51  {
54 
56  evt.getByToken(musToken_, mus);
57 
60 
63 
64  std::vector<std::vector<int> > matchVec;
65  if (getMatch_) {
67  evt.getByToken(matchToken_, matchHandle);
68  ;
69  matchVec = *matchHandle;
70  } else {
71  std::vector<int> dummyMatch;
72  for (unsigned int i = 0; i < 4; ++i)
73  dummyMatch.push_back(-1);
74  matchVec.push_back(dummyMatch);
75  }
76 
77  // declare unique_ptr for products
78  std::unique_ptr<std::vector<std::pair<reco::CompositeCandidate, std::vector<int> > > > pOut(
79  new std::vector<std::pair<reco::CompositeCandidate, std::vector<int> > >);
80  std::unique_ptr<int> pKey(new int);
81 
82  // build and feed out key
83  buildKey();
84  *pKey = key();
85  evt.put(std::move(pKey), "Key");
86 
87  // go through given vector of jet combinations
88  unsigned int idMatch = 0;
89  typedef std::vector<std::vector<int> >::iterator MatchVecIterator;
90  for (MatchVecIterator match = matchVec.begin(); match != matchVec.end(); ++match) {
91  // reset pointers
93  // build hypothesis
94  buildHypo(evt, elecs, mus, jets, mets, *match, idMatch++);
95  pOut->push_back(std::make_pair(hypo(), *match));
96  }
97  // feed out hyps and matches
98  evt.put(std::move(pOut));
99 }

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(), and resetCandidates().

◆ resetCandidates()

void TtFullLepHypothesis::resetCandidates ( )
protected

reset candidate pointers before hypo build process

Definition at line 102 of file TtFullLepHypothesis.cc.

102  {
103  lepton_ = nullptr;
104  leptonBar_ = nullptr;
105  b_ = nullptr;
106  bBar_ = nullptr;
107  neutrino_ = nullptr;
108  neutrinoBar_ = nullptr;
109  //met_ = 0;
110 }

References b_, bBar_, lepton_, leptonBar_, neutrino_, and neutrinoBar_.

Referenced by produce().

◆ setCandidate() [1/2]

template<typename C >
void TtFullLepHypothesis::setCandidate ( const edm::Handle< C > &  handle,
const int &  idx,
reco::ShallowClonePtrCandidate *&  clone 
)
protected

use one object in a collection to set a ShallowClonePtrCandidate

Definition at line 112 of file TtFullLepHypothesis.h.

114  {
115  typedef typename C::value_type O;
117  clone = new reco::ShallowClonePtrCandidate(ptr, ptr->charge(), ptr->p4(), ptr->vertex());
118 }

References clone(), patZpeak::handle, and training_settings::idx.

Referenced by TtFullLepHypKinSolution::buildHypo(), and TtFullLepHypGenMatch::buildHypo().

◆ setCandidate() [2/2]

void TtFullLepHypothesis::setCandidate ( const edm::Handle< std::vector< pat::Jet > > &  handle,
const int &  idx,
reco::ShallowClonePtrCandidate *&  clone,
const std::string &  correctionLevel 
)
protected

use one object in a jet collection to set a ShallowClonePtrCandidate with proper jet corrections

Definition at line 167 of file TtFullLepHypothesis.cc.

170  {
173  ptr, ptr->charge(), ptr->correctedJet(jetCorrectionLevel_, "bottom").p4(), ptr->vertex());
174 }

References reco::LeafCandidate::charge(), clone(), pat::Jet::correctedJet(), patZpeak::handle, training_settings::idx, jetCorrectionLevel_, reco::LeafCandidate::p4(), and reco::LeafCandidate::vertex().

Member Data Documentation

◆ b_

reco::ShallowClonePtrCandidate* TtFullLepHypothesis::b_
protected

◆ bBar_

reco::ShallowClonePtrCandidate* TtFullLepHypothesis::bBar_
protected

◆ elecsToken_

edm::EDGetTokenT<std::vector<pat::Electron> > TtFullLepHypothesis::elecsToken_
protected

Definition at line 85 of file TtFullLepHypothesis.h.

Referenced by produce().

◆ getMatch_

bool TtFullLepHypothesis::getMatch_
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().

◆ jetCorrectionLevel_

std::string TtFullLepHypothesis::jetCorrectionLevel_
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().

◆ jetsToken_

edm::EDGetTokenT<std::vector<pat::Jet> > TtFullLepHypothesis::jetsToken_
protected

Definition at line 87 of file TtFullLepHypothesis.h.

Referenced by produce().

◆ key_

int TtFullLepHypothesis::key_
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().

◆ lepton_

reco::ShallowClonePtrCandidate* TtFullLepHypothesis::lepton_
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().

◆ leptonBar_

reco::ShallowClonePtrCandidate* TtFullLepHypothesis::leptonBar_
protected

◆ matchToken_

edm::EDGetTokenT<std::vector<std::vector<int> > > TtFullLepHypothesis::matchToken_
protected

input label for all necessary collections

Definition at line 84 of file TtFullLepHypothesis.h.

Referenced by produce(), and TtFullLepHypothesis().

◆ metsToken_

edm::EDGetTokenT<std::vector<pat::MET> > TtFullLepHypothesis::metsToken_
protected

Definition at line 88 of file TtFullLepHypothesis.h.

Referenced by produce().

◆ musToken_

edm::EDGetTokenT<std::vector<pat::Muon> > TtFullLepHypothesis::musToken_
protected

Definition at line 86 of file TtFullLepHypothesis.h.

Referenced by produce().

◆ neutrino_

reco::ShallowClonePtrCandidate* TtFullLepHypothesis::neutrino_
protected

◆ neutrinoBar_

reco::ShallowClonePtrCandidate* TtFullLepHypothesis::neutrinoBar_
protected

◆ recNu

reco::LeafCandidate* TtFullLepHypothesis::recNu
protected

candidates needed for the genmatch hypothesis

Definition at line 105 of file TtFullLepHypothesis.h.

Referenced by TtFullLepHypGenMatch::buildMatchingNeutrinos(), and hypo().

◆ recNuBar

reco::LeafCandidate* TtFullLepHypothesis::recNuBar
protected

Definition at line 106 of file TtFullLepHypothesis.h.

Referenced by TtFullLepHypGenMatch::buildMatchingNeutrinos(), and hypo().

mps_fire.i
i
Definition: mps_fire.py:355
TtFullLepHypothesis::jetsToken_
edm::EDGetTokenT< std::vector< pat::Jet > > jetsToken_
Definition: TtFullLepHypothesis.h:87
patZpeak.handle
handle
Definition: patZpeak.py:23
TtFullLepDaughter::B
static const std::string B
Definition: TtFullLeptonicEvent.h:9
edm::LogInfo
Definition: MessageLogger.h:254
TtFullLepHypothesis::b_
reco::ShallowClonePtrCandidate * b_
Definition: TtFullLepHypothesis.h:98
TtFullLepHypothesis::buildKey
virtual void buildKey()=0
build the event hypothesis key
TtFullLepHypothesis::neutrinoBar_
reco::ShallowClonePtrCandidate * neutrinoBar_
Definition: TtFullLepHypothesis.h:101
TtFullHadDaughter::WMinus
static const std::string WMinus
Definition: TtFullHadronicEvent.h:10
singleTopDQM_cfi.jets
jets
Definition: singleTopDQM_cfi.py:42
TtFullLepDaughter::LepBar
static const std::string LepBar
Definition: TtFullLeptonicEvent.h:9
singleTopDQM_cfi.mets
mets
Definition: singleTopDQM_cfi.py:43
edm::Handle
Definition: AssociativeIterator.h:50
training_settings.idx
idx
Definition: training_settings.py:16
TtFullLepHypothesis::resetCandidates
void resetCandidates()
reset candidate pointers before hypo build process
Definition: TtFullLepHypothesis.cc:102
TtFullLepHypothesis::hypo
reco::CompositeCandidate hypo()
return event hypothesis
Definition: TtFullLepHypothesis.cc:113
clone
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition: eve_macros.cc:135
TtFullLepHypothesis::getMatch_
bool getMatch_
Definition: TtFullLepHypothesis.h:82
singleTopDQM_cfi.elecs
elecs
Definition: singleTopDQM_cfi.py:41
TtFullLepHypothesis::key
int key() const
return key
Definition: TtFullLepHypothesis.h:55
edm::Event::getByToken
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:528
TtFullHadDaughter::Top
static const std::string Top
Definition: TtFullHadronicEvent.h:9
reco::CompositeCandidate::addDaughter
void addDaughter(const Candidate &, const std::string &s="")
add a clone of the passed candidate as daughter
Definition: CompositeCandidate.cc:108
TtFullLepDaughter::NuBar
static const std::string NuBar
Definition: TtFullLeptonicEvent.h:10
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
TtFullLepHypothesis::recNuBar
reco::LeafCandidate * recNuBar
Definition: TtFullLepHypothesis.h:106
TtFullLepHypothesis::matchToken_
edm::EDGetTokenT< std::vector< std::vector< int > > > matchToken_
input label for all necessary collections
Definition: TtFullLepHypothesis.h:84
TtFullLepDaughter::WPlus
static const std::string WPlus
Definition: TtFullLeptonicEvent.h:9
TtFullLepHypothesis::musToken_
edm::EDGetTokenT< std::vector< pat::Muon > > musToken_
Definition: TtFullLepHypothesis.h:86
TtFullLepHypothesis::lepton_
reco::ShallowClonePtrCandidate * lepton_
Definition: TtFullLepHypothesis.h:96
TtFullHadDaughter::WPlus
static const std::string WPlus
Definition: TtFullHadronicEvent.h:9
match
std::pair< typename Association::data_type::first_type, double > match(Reference key, Association association, bool bestMatchByMaxValue)
Generic matching function.
Definition: Utils.h:10
TtFullLepDaughter::WMinus
static const std::string WMinus
Definition: TtFullLeptonicEvent.h:10
TtFullLepHypothesis::metsToken_
edm::EDGetTokenT< std::vector< pat::MET > > metsToken_
Definition: TtFullLepHypothesis.h:88
reco::LeafCandidate::p4
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:114
edm::Event::put
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:132
reco::LeafCandidate::charge
int charge() const final
electric charge
Definition: LeafCandidate.h:106
reco::JetExtendedAssociation::value_type
Container::value_type value_type
Definition: JetExtendedAssociation.h:30
TtFullLepDaughter::Lep
static const std::string Lep
Definition: TtFullLeptonicEvent.h:10
TtFullLepDaughter::BBar
static const std::string BBar
Definition: TtFullLeptonicEvent.h:10
reco::LeafCandidate::vertex
const Point & vertex() const override
vertex position (overwritten by PF...)
Definition: LeafCandidate.h:165
edm::Ptr
Definition: AssociationVector.h:31
looper.cfg
cfg
Definition: looper.py:297
TtFullLepHypothesis::elecsToken_
edm::EDGetTokenT< std::vector< pat::Electron > > elecsToken_
Definition: TtFullLepHypothesis.h:85
TtEvent::kGenMatch
Definition: TtEvent.h:34
TtFullHadDaughter::TopBar
static const std::string TopBar
Definition: TtFullHadronicEvent.h:11
eostools.move
def move(src, dest)
Definition: eostools.py:511
TtEvent::kKinSolution
Definition: TtEvent.h:37
TtFullLepHypothesis::recNu
reco::LeafCandidate * recNu
candidates needed for the genmatch hypothesis
Definition: TtFullLepHypothesis.h:105
AddFourMomenta::set
void set(reco::Candidate &c) const
set up a candidate
Definition: AddFourMomenta.cc:6
TtFullLepHypothesis::jetCorrectionLevel_
std::string jetCorrectionLevel_
Definition: TtFullLepHypothesis.h:91
pat::Jet::correctedJet
Jet correctedJet(const std::string &level, const std::string &flavor="none", const std::string &set="") const
TtFullLepHypothesis::neutrino_
reco::ShallowClonePtrCandidate * neutrino_
Definition: TtFullLepHypothesis.h:100
TtFullLepDaughter::Nu
static const std::string Nu
Definition: TtFullLeptonicEvent.h:9
TtFullLepHypothesis::leptonBar_
reco::ShallowClonePtrCandidate * leptonBar_
Definition: TtFullLepHypothesis.h:97
AddFourMomenta
Definition: AddFourMomenta.h:18
reco::ShallowClonePtrCandidate
Definition: ShallowClonePtrCandidate.h:15
edm::EDConsumerBase::consumes
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
Definition: EDConsumerBase.h:126
TtFullLepDaughter::TopBar
static const std::string TopBar
Definition: TtFullLeptonicEvent.h:10
TtFullLepHypothesis::buildHypo
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
TtFullLepHypothesis::bBar_
reco::ShallowClonePtrCandidate * bBar_
Definition: TtFullLepHypothesis.h:99
edm::InputTag
Definition: InputTag.h:15
TtFullLepHypothesis::key_
int key_
hypothesis key (to be set by the buildKey function)
Definition: TtFullLepHypothesis.h:93
reco::CompositeCandidate
Definition: CompositeCandidate.h:21
TtFullLepDaughter::Top
static const std::string Top
Definition: TtFullLeptonicEvent.h:9