CMS 3D CMS Logo

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.

References patTestJEC_cfi::jec, label, and AlCaHLTBitMon_QueryRunRegistry::string.

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 {}
char const * label
std::vector< CorrectionFactor > jec_

Member Function Documentation

float TauJetCorrFactors::correction ( unsigned int  level) const

Definition at line 28 of file TauJetCorrFactors.cc.

References correctionLabelString(), Exception, jec_, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by jecLevel(), and 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_
std::string pat::TauJetCorrFactors::correctionLabel ( unsigned int  level) const
inline

Definition at line 58 of file TauJetCorrFactors.h.

References jec_, and AlCaHLTBitMon_QueryRunRegistry::string.

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

Definition at line 52 of file TauJetCorrFactors.cc.

References jec_, and tablePrinter::labels.

Referenced by jecLevel().

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 mps_setup::append, training_settings::idx, jec_, tablePrinter::labels, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by correction(), and jecLevel().

41 {
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
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_
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_, and print().

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

Definition at line 63 of file TauJetCorrFactors.cc.

References correction(), and jec_.

Referenced by numberOfCorrectionLevels().

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  message << std::setw(3) << corrFactorIdx << " " << corrFactor->first;
70  message << std::setw(10) << correction (corrFactor-jec_.begin());
71  message << "\n";
72  }
73 }
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