CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
TtFullHadHypKinFit Class Reference

#include <TtFullHadHypKinFit.h>

Inheritance diagram for TtFullHadHypKinFit:
TtFullHadHypothesis edm::EDProducer edm::ProducerBase edm::ProductRegistryHelper

Public Member Functions

 TtFullHadHypKinFit (const edm::ParameterSet &)
 
 ~TtFullHadHypKinFit ()
 
- Public Member Functions inherited from TtFullHadHypothesis
 TtFullHadHypothesis (const edm::ParameterSet &cfg)
 default constructor More...
 
 ~TtFullHadHypothesis ()
 default destructor More...
 
- Public Member Functions inherited from edm::EDProducer
 EDProducer ()
 
virtual ~EDProducer ()
 
- Public Member Functions inherited from edm::ProducerBase
 ProducerBase ()
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
boost::function< void(const
BranchDescription &)> 
registrationCallback () const
 used by the fwk to register list of products More...
 
virtual ~ProducerBase ()
 

Private Member Functions

virtual void buildHypo (edm::Event &, const edm::Handle< std::vector< pat::Jet > > &, std::vector< int > &, const unsigned int iComb)
 build event hypothesis from the reco objects of a full-hadronic event More...
 
virtual void buildKey ()
 build the event hypothesis key More...
 

Private Attributes

edm::InputTag bBarTag_
 
edm::InputTag bTag_
 
edm::InputTag lightPBarTag_
 
edm::InputTag lightPTag_
 
edm::InputTag lightQBarTag_
 
edm::InputTag lightQTag_
 
edm::InputTag status_
 

Additional Inherited Members

- Public Types inherited from edm::EDProducer
typedef EDProducer ModuleType
 
typedef WorkerT< EDProducerWorkerType
 
- Public Types inherited from edm::ProducerBase
typedef
ProductRegistryHelper::TypeLabelList 
TypeLabelList
 
- Static Public Member Functions inherited from edm::EDProducer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from TtFullHadHypothesis
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...
 
std::string jetCorrectionLevel (const std::string &quarkType)
 helper function to construct the proper correction level string for corresponding quarkType More...
 
int key () const
 return key More...
 
virtual void produce (edm::Event &, const edm::EventSetup &)
 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::EDProducer
CurrentProcessingContext const * currentContext () const
 
- Protected Member Functions inherited from edm::ProducerBase
template<class TProducer , class TMethod >
void callWhenNewProductsRegistered (TProducer *iProd, TMethod iMethod)
 
- Protected Attributes inherited from TtFullHadHypothesis
reco::ShallowClonePtrCandidateb_
 
reco::ShallowClonePtrCandidatebBar_
 
bool getMatch_
 
std::string jetCorrectionLevel_
 
edm::InputTag jets_
 input label for all necessary collections More...
 
int key_
 hypothesis key (to be set by the buildKey function) More...
 
reco::ShallowClonePtrCandidatelightP_
 
reco::ShallowClonePtrCandidatelightPBar_
 
reco::ShallowClonePtrCandidatelightQ_
 
reco::ShallowClonePtrCandidatelightQBar_
 
edm::InputTag match_
 

Detailed Description

Definition at line 6 of file TtFullHadHypKinFit.h.

Constructor & Destructor Documentation

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

Definition at line 5 of file TtFullHadHypKinFit.cc.

5  :
6  TtFullHadHypothesis( cfg ),
7  status_ (cfg.getParameter<edm::InputTag>("status" )),
8  lightQTag_ (cfg.getParameter<edm::InputTag>("lightQTag" )),
9  lightQBarTag_(cfg.getParameter<edm::InputTag>("lightQBarTag")),
10  bTag_ (cfg.getParameter<edm::InputTag>("bTag" )),
11  bBarTag_ (cfg.getParameter<edm::InputTag>("bBarTag" )),
12  lightPTag_ (cfg.getParameter<edm::InputTag>("lightPTag" )),
13  lightPBarTag_(cfg.getParameter<edm::InputTag>("lightPBarTag"))
14 {
15 }
T getParameter(std::string const &) const
edm::InputTag bBarTag_
edm::InputTag lightPBarTag_
edm::InputTag lightQTag_
edm::InputTag lightQBarTag_
TtFullHadHypothesis(const edm::ParameterSet &cfg)
default constructor
edm::InputTag lightPTag_
TtFullHadHypKinFit::~TtFullHadHypKinFit ( )

Definition at line 17 of file TtFullHadHypKinFit.cc.

17 { }

Member Function Documentation

void TtFullHadHypKinFit::buildHypo ( edm::Event evt,
const edm::Handle< std::vector< pat::Jet > > &  jets,
std::vector< int > &  match,
const unsigned int  iComb 
)
privatevirtual

build event hypothesis from the reco objects of a full-hadronic event

Implements TtFullHadHypothesis.

Definition at line 20 of file TtFullHadHypKinFit.cc.

References b, TtFullHadHypothesis::b_, TtFullHadHypothesis::bBar_, bBarTag_, bTag_, edm::Event::getByLabel(), TtFullHadHypothesis::lightP_, TtFullHadHypothesis::lightPBar_, lightPBarTag_, lightPTag_, TtFullHadHypothesis::lightQ_, TtFullHadHypothesis::lightQBar_, lightQBarTag_, lightQTag_, TtFullHadHypothesis::setCandidate(), ntuplemaker::status, and status_.

23 {
25  evt.getByLabel(status_, status);
26  if( (*status)[iComb] != 0 ){
27  // create empty hypothesis if kinematic fit did not converge
28  return;
29  }
30 
37 
38  evt.getByLabel(lightQTag_ , lightQ );
39  evt.getByLabel(lightQBarTag_, lightQBar);
40  evt.getByLabel(bTag_ , b );
41  evt.getByLabel(bBarTag_ , bBar );
42  evt.getByLabel(lightPTag_ , lightP );
43  evt.getByLabel(lightPBarTag_, lightPBar);
44 
45  // -----------------------------------------------------
46  // add jets
47  // -----------------------------------------------------
48  if( !( lightQ->empty() || lightQBar->empty() || b->empty() || bBar->empty() ||
49  lightP->empty() || lightPBar->empty() ) ) {
50  setCandidate(lightQ , iComb, lightQ_ );
51  setCandidate(lightQBar, iComb, lightQBar_);
52  setCandidate(b , iComb, b_ );
53  setCandidate(bBar , iComb, bBar_ );
54  setCandidate(lightP , iComb, lightP_ );
55  setCandidate(lightPBar, iComb, lightPBar_);
56  }
57 }
void setCandidate(const edm::Handle< C > &handle, const int &idx, reco::ShallowClonePtrCandidate *&clone)
use one object in a collection to set a ShallowClonePtrCandidate
edm::InputTag bBarTag_
reco::ShallowClonePtrCandidate * lightPBar_
edm::InputTag lightPBarTag_
reco::ShallowClonePtrCandidate * lightQBar_
reco::ShallowClonePtrCandidate * lightP_
edm::InputTag lightQTag_
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
edm::InputTag lightQBarTag_
double b
Definition: hdecay.h:120
reco::ShallowClonePtrCandidate * bBar_
reco::ShallowClonePtrCandidate * b_
tuple status
Definition: ntuplemaker.py:245
reco::ShallowClonePtrCandidate * lightQ_
edm::InputTag lightPTag_
virtual void TtFullHadHypKinFit::buildKey ( )
inlineprivatevirtual

build the event hypothesis key

Implements TtFullHadHypothesis.

Definition at line 16 of file TtFullHadHypKinFit.h.

References TtFullHadHypothesis::key_, and TtEvent::kKinFit.

int key_
hypothesis key (to be set by the buildKey function)

Member Data Documentation

edm::InputTag TtFullHadHypKinFit::bBarTag_
private

Definition at line 26 of file TtFullHadHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtFullHadHypKinFit::bTag_
private

Definition at line 25 of file TtFullHadHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtFullHadHypKinFit::lightPBarTag_
private

Definition at line 28 of file TtFullHadHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtFullHadHypKinFit::lightPTag_
private

Definition at line 27 of file TtFullHadHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtFullHadHypKinFit::lightQBarTag_
private

Definition at line 24 of file TtFullHadHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtFullHadHypKinFit::lightQTag_
private

Definition at line 23 of file TtFullHadHypKinFit.h.

Referenced by buildHypo().

edm::InputTag TtFullHadHypKinFit::status_
private

Definition at line 22 of file TtFullHadHypKinFit.h.

Referenced by buildHypo().