CMS 3D CMS Logo

pftools::LinearCalibration Class Reference

#include <RecoParticleFlow/PFClusterTools/interface/LinearCalibration.h>

Inheritance diagram for pftools::LinearCalibration:

pftools::Calibration

List of all members.

Public Member Functions

 LinearCalibration (CalibrationTarget t, double a, double b, double c)
 LinearCalibration (CalibrationTarget t, double b, double c)
 LinearCalibration ()
virtual ~LinearCalibration ()

Public Attributes

double a_
double b_
double c_

Protected Member Functions

virtual void calibrateCore (const CalibrationResultWrapper &crwInput, CalibrationResultWrapper &crwOutput)


Detailed Description

Definition at line 10 of file LinearCalibration.h.


Constructor & Destructor Documentation

LinearCalibration::LinearCalibration (  ) 

Definition at line 5 of file LinearCalibration.cc.

00005                                      :
00006         a_(0), b_(0), c_(0) {
00007 }

LinearCalibration::LinearCalibration ( CalibrationTarget  t,
double  b,
double  c 
)

Definition at line 16 of file LinearCalibration.cc.

References pftools::LINEAR, pftools::Calibration::prov_, and pftools::Calibration::targ_.

00016                                                                             :
00017          a_(-1.0), b_(b), c_(c) {
00018         targ_ = t;
00019         prov_ = LINEAR;
00020 
00021 }

LinearCalibration::LinearCalibration ( CalibrationTarget  t,
double  a,
double  b,
double  c 
)

Definition at line 9 of file LinearCalibration.cc.

References pftools::LINEAR, pftools::Calibration::prov_, and pftools::Calibration::targ_.

00010                           :
00011          a_(a), b_(b), c_(c) {
00012         targ_ = t;
00013         prov_ = LINEAR;
00014 }

LinearCalibration::~LinearCalibration (  )  [virtual]

Definition at line 23 of file LinearCalibration.cc.

00023                                       {
00024 }


Member Function Documentation

void LinearCalibration::calibrateCore ( const CalibrationResultWrapper crwInput,
CalibrationResultWrapper crwOutput 
) [protected, virtual]

Reimplemented from pftools::Calibration.

Definition at line 26 of file LinearCalibration.cc.

References a_, b_, c_, pftools::CalibrationResultWrapper::compute(), GenMuonPlsPt100GeV_cfg::cout, pftools::CalibrationResultWrapper::ecalEnergy_, pftools::CalibrationResultWrapper::hcalEnergy_, pftools::LINEAR, pftools::CalibrationResultWrapper::particleEnergy_, pftools::CalibrationResultWrapper::provenance_, pftools::CalibrationResultWrapper::reset(), pftools::Calibration::targ_, pftools::CalibrationResultWrapper::target_, pftools::CalibrationResultWrapper::truthEnergy_, and UNDEFINED.

00027                                                      {
00028         if (targ_ == UNDEFINED) {
00029                 std::cout << __PRETTY_FUNCTION__ << ": WARNING! Target is undefined!\n";
00030                 return;
00031         } else {
00032                 crwOutput.reset();
00033                 crwOutput.target_ = Calibration::targ_;
00034                 crwOutput.provenance_ = LINEAR;
00035 
00036                 crwOutput.ecalEnergy_ = b_ * crwInput.ecalEnergy_;
00037                 crwOutput.hcalEnergy_ = c_ * crwInput.hcalEnergy_;
00038                 crwOutput.particleEnergy_ = a_ + crwOutput.ecalEnergy_
00039                                 + crwOutput.hcalEnergy_;
00040                 crwOutput.truthEnergy_ = crwInput.truthEnergy_;
00041                 crwOutput.compute();
00042 
00043         }
00044 
00045 }


Member Data Documentation

double pftools::LinearCalibration::a_

Definition at line 16 of file LinearCalibration.h.

Referenced by calibrateCore(), and pftools::operator<<().

double pftools::LinearCalibration::b_

Definition at line 16 of file LinearCalibration.h.

Referenced by calibrateCore(), and pftools::operator<<().

double pftools::LinearCalibration::c_

Definition at line 16 of file LinearCalibration.h.

Referenced by calibrateCore(), and pftools::operator<<().


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