CMS 3D CMS Logo

TtSemiLepHypKinFit Class Reference

#include <TopQuarkAnalysis/TopJetCombination/plugins/TtSemiLepHypKinFit.h>

Inheritance diagram for TtSemiLepHypKinFit:

TtSemiLepHypothesis edm::EDProducer edm::ProducerBase edm::ProductRegistryHelper

List of all members.

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_


Detailed Description

Definition at line 6 of file TtSemiLepHypKinFit.h.


Constructor & Destructor Documentation

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

Definition at line 17 of file TtSemiLepHypKinFit.cc.

00017 { }


Member Function Documentation

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.


Member Data Documentation

edm::InputTag TtSemiLepHypKinFit::leptons_ [private]

Definition at line 29 of file TtSemiLepHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtSemiLepHypKinFit::neutrinos_ [private]

Definition at line 30 of file TtSemiLepHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtSemiLepHypKinFit::partonsHadB_ [private]

Definition at line 27 of file TtSemiLepHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtSemiLepHypKinFit::partonsHadP_ [private]

Definition at line 25 of file TtSemiLepHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtSemiLepHypKinFit::partonsHadQ_ [private]

Definition at line 26 of file TtSemiLepHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtSemiLepHypKinFit::partonsLepB_ [private]

Definition at line 28 of file TtSemiLepHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtSemiLepHypKinFit::status_ [private]

Definition at line 24 of file TtSemiLepHypKinFit.h.

Referenced by buildHypo().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:34:45 2009 for CMSSW by  doxygen 1.5.4