![]() |
![]() |
#include <TopQuarkAnalysis/TopJetCombination/plugins/TtSemiLepHypKinFit.h>
Public Member Functions | |
TtSemiLepHypKinFit (const edm::ParameterSet &) | |
~TtSemiLepHypKinFit () | |
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 | |
virtual void | buildKey () |
build the event hypothesis key | |
Private Attributes | |
edm::InputTag | leptons_ |
edm::InputTag | neutrinos_ |
edm::InputTag | partonsHadB_ |
edm::InputTag | partonsHadP_ |
edm::InputTag | partonsHadQ_ |
edm::InputTag | partonsLepB_ |
edm::InputTag | status_ |
Definition at line 6 of file TtSemiLepHypKinFit.h.
TtSemiLepHypKinFit::TtSemiLepHypKinFit | ( | const edm::ParameterSet & | cfg | ) | [explicit] |
Definition at line 5 of file TtSemiLepHypKinFit.cc.
00005 : 00006 TtSemiLepHypothesis( cfg ), 00007 status_ (cfg.getParameter<edm::InputTag>("status" )), 00008 partonsHadP_(cfg.getParameter<edm::InputTag>("partonsHadP")), 00009 partonsHadQ_(cfg.getParameter<edm::InputTag>("partonsHadQ")), 00010 partonsHadB_(cfg.getParameter<edm::InputTag>("partonsHadB")), 00011 partonsLepB_(cfg.getParameter<edm::InputTag>("partonsLepB")), 00012 leptons_ (cfg.getParameter<edm::InputTag>("leptons" )), 00013 neutrinos_ (cfg.getParameter<edm::InputTag>("neutrinos" )) 00014 { 00015 }
TtSemiLepHypKinFit::~TtSemiLepHypKinFit | ( | ) |
void TtSemiLepHypKinFit::buildHypo | ( | edm::Event & | evt, | |
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 > & | match, | |||
const unsigned int | iComb | |||
) | [private, virtual] |
build event hypothesis from the reco objects of a semi-leptonic event
Implements TtSemiLepHypothesis.
Definition at line 20 of file TtSemiLepHypKinFit.cc.
References edm::Event::getByLabel(), TtSemiLepHypothesis::hadronicB_, TtSemiLepHypothesis::lepton_, TtSemiLepHypothesis::leptonicB_, EgammaValidation_Zee_cff::leptons, leptons_, TtSemiLepHypothesis::lightQ_, TtSemiLepHypothesis::lightQBar_, TtSemiLepHypothesis::neutrino_, neutrinos_, partonsHadB_, partonsHadP_, partonsHadQ_, partonsLepB_, TtSemiLepHypothesis::setCandidate(), StDecayID::status, and status_.
00025 { 00026 edm::Handle<std::vector<int> > status; 00027 evt.getByLabel(status_, status); 00028 if( (*status)[iComb] != 0 ){ 00029 // create empty hypothesis if kinematic fit did not converge 00030 return; 00031 } 00032 00033 edm::Handle<std::vector<pat::Particle> > partonsHadP; 00034 edm::Handle<std::vector<pat::Particle> > partonsHadQ; 00035 edm::Handle<std::vector<pat::Particle> > partonsHadB; 00036 edm::Handle<std::vector<pat::Particle> > partonsLepB; 00037 edm::Handle<std::vector<pat::Particle> > leptons; 00038 edm::Handle<std::vector<pat::Particle> > neutrinos; 00039 00040 evt.getByLabel(partonsHadP_, partonsHadP); 00041 evt.getByLabel(partonsHadQ_, partonsHadQ); 00042 evt.getByLabel(partonsHadB_, partonsHadB); 00043 evt.getByLabel(partonsLepB_, partonsLepB); 00044 evt.getByLabel(leptons_ , leptons ); 00045 evt.getByLabel(neutrinos_ , neutrinos ); 00046 00047 // ----------------------------------------------------- 00048 // add jets 00049 // ----------------------------------------------------- 00050 if( !( partonsHadP->empty() || partonsHadQ->empty() || 00051 partonsHadB->empty() || partonsLepB->empty() ) ) { 00052 setCandidate(partonsHadP, iComb, lightQ_ ); 00053 setCandidate(partonsHadQ, iComb, lightQBar_); 00054 setCandidate(partonsHadB, iComb, hadronicB_); 00055 setCandidate(partonsLepB, iComb, leptonicB_); 00056 } 00057 00058 // ----------------------------------------------------- 00059 // add lepton 00060 // ----------------------------------------------------- 00061 if( !leptons->empty() ) 00062 setCandidate(leptons, iComb, lepton_); 00063 match.push_back( 0 ); 00064 00065 // ----------------------------------------------------- 00066 // add neutrino 00067 // ----------------------------------------------------- 00068 if( !neutrinos->empty() ) 00069 setCandidate(neutrinos, iComb, neutrino_); 00070 }
virtual void TtSemiLepHypKinFit::buildKey | ( | ) | [inline, private, virtual] |
build the event hypothesis key
Implements TtSemiLepHypothesis.
Definition at line 16 of file TtSemiLepHypKinFit.h.
References TtSemiLepHypothesis::key_, and TtEvent::kKinFit.
00016 { key_= TtSemiLeptonicEvent::kKinFit; };
edm::InputTag TtSemiLepHypKinFit::leptons_ [private] |
edm::InputTag TtSemiLepHypKinFit::neutrinos_ [private] |
edm::InputTag TtSemiLepHypKinFit::status_ [private] |