CMS 3D CMS Logo

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

#include <TauJetCorrFactors.h>

Public Types

typedef std::pair< std::string,
float > 
CorrectionFactor
 

Public Member Functions

float correction (unsigned int level) const
 
std::string correctionLabel (unsigned int level) const
 
std::vector< std::string > correctionLabels () const
 
std::string correctionLabelString () const
 
std::string jecLevel (const unsigned int &level) const
 
int jecLevel (const std::string &level) const
 
std::string jecSet () const
 
unsigned int numberOfCorrectionLevels () const
 
void print () const
 
 TauJetCorrFactors ()
 
 TauJetCorrFactors (const std::string &label, const std::vector< CorrectionFactor > &jec)
 

Private Attributes

std::vector< CorrectionFactorjec_
 
std::string label_
 

Detailed Description

Definition at line 31 of file TauJetCorrFactors.h.

Member Typedef Documentation

typedef std::pair<std::string, float> pat::TauJetCorrFactors::CorrectionFactor

Definition at line 36 of file TauJetCorrFactors.h.

Constructor & Destructor Documentation

pat::TauJetCorrFactors::TauJetCorrFactors ( )
inline

Definition at line 40 of file TauJetCorrFactors.h.

40 {};
TauJetCorrFactors::TauJetCorrFactors ( const std::string &  label,
const std::vector< CorrectionFactor > &  jec 
)

Definition at line 12 of file TauJetCorrFactors.cc.

13  : label_(label),
14  jec_(jec)
15 {}
std::vector< CorrectionFactor > jec_

Member Function Documentation

float TauJetCorrFactors::correction ( unsigned int  level) const

Definition at line 28 of file TauJetCorrFactors.cc.

References correctionLabelString(), edm::hlt::Exception, and jec_.

Referenced by print().

29 {
30  if ( !(level < jec_.size()) ) {
31  throw cms::Exception("InvalidRequest")
32  << "You try to call a jet energy correction level wich does not exist. \n"
33  << "Available jet energy correction levels are: \n"
35  }
36  return jec_.at(level).second;
37 }
std::string correctionLabelString() const
std::vector< CorrectionFactor > jec_
tuple level
Definition: testEve_cfg.py:34
std::string pat::TauJetCorrFactors::correctionLabel ( unsigned int  level) const
inline

Definition at line 58 of file TauJetCorrFactors.h.

References jec_.

58 { return (level<jec_.size() ? jec_.at(level).first : std::string("ERROR")); };
std::vector< CorrectionFactor > jec_
tuple level
Definition: testEve_cfg.py:34
std::vector< std::string > TauJetCorrFactors::correctionLabels ( ) const

Definition at line 52 of file TauJetCorrFactors.cc.

References jec_, and reco_calib_source_client_cfg::labels.

53 {
54  std::vector<std::string> labels;
55  for ( std::vector<CorrectionFactor>::const_iterator corrFactor = jec_.begin();
56  corrFactor != jec_.end(); ++corrFactor ) {
57  labels.push_back(corrFactor->first);
58  }
59  return labels;
60 }
std::vector< CorrectionFactor > jec_
std::string TauJetCorrFactors::correctionLabelString ( ) const

Definition at line 40 of file TauJetCorrFactors.cc.

References python.multivaluedict::append(), jec_, and reco_calib_source_client_cfg::labels.

Referenced by correction().

41 {
42  std::string labels;
43  for ( std::vector<CorrectionFactor>::const_iterator corrFactor = jec_.begin();
44  corrFactor != jec_.end(); ++corrFactor ) {
45  std::stringstream idx; idx << (corrFactor-jec_.begin());
46  labels.append(idx.str()).append(" ").append(corrFactor->first).append("\n");
47  }
48  return labels;
49 }
std::vector< CorrectionFactor > jec_
std::string pat::TauJetCorrFactors::jecLevel ( const unsigned int &  level) const
inline

Definition at line 47 of file TauJetCorrFactors.h.

References jec_.

47 { return jec_.at(level).first; };
std::vector< CorrectionFactor > jec_
tuple level
Definition: testEve_cfg.py:34
int TauJetCorrFactors::jecLevel ( const std::string &  level) const

Definition at line 18 of file TauJetCorrFactors.cc.

References jec_.

19 {
20  for ( std::vector<CorrectionFactor>::const_iterator corrFactor = jec_.begin();
21  corrFactor != jec_.end(); ++corrFactor ) {
22  if ( corrFactor->first == level ) return (corrFactor-jec_.begin());
23  }
24  return -1;
25 }
std::vector< CorrectionFactor > jec_
tuple level
Definition: testEve_cfg.py:34
std::string pat::TauJetCorrFactors::jecSet ( ) const
inline

Definition at line 45 of file TauJetCorrFactors.h.

References label_.

45 { return label_; }
unsigned int pat::TauJetCorrFactors::numberOfCorrectionLevels ( ) const
inline

Definition at line 60 of file TauJetCorrFactors.h.

References jec_.

60 { return jec_.size(); };
std::vector< CorrectionFactor > jec_
void TauJetCorrFactors::print ( void  ) const

Definition at line 63 of file TauJetCorrFactors.cc.

References correction(), jec_, and python.rootplot.argparse::message.

64 {
65  edm::LogInfo message("JetCorrFactors");
66  for ( std::vector<CorrectionFactor>::const_iterator corrFactor = jec_.begin();
67  corrFactor != jec_.end(); ++corrFactor ) {
68  unsigned int corrFactorIdx = corrFactor-jec_.begin();
69  std::stringstream idx;
70  idx << corrFactorIdx;
71  message << std::setw(3) << idx << " " << corrFactor->first;
72  message << std::setw(10) << correction (corrFactor-jec_.begin());
73  message << "\n";
74  }
75 }
float correction(unsigned int level) const
std::vector< CorrectionFactor > jec_

Member Data Documentation

std::vector<CorrectionFactor> pat::TauJetCorrFactors::jec_
private
std::string pat::TauJetCorrFactors::label_
private