CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/CondFormats/EcalObjects/interface/EcalWeightSet.h

Go to the documentation of this file.
00001 #ifndef CondFormats_EcalObjects_EcalWeightSet_HH
00002 #define CondFormats_EcalObjects_EcalWeightSet_HH
00003 
00011 #include "CondFormats/EcalObjects/interface/EcalWeight.h"
00012 #include "DataFormats/EcalDigi/interface/EcalDataFrame.h"
00013 #include "DataFormats/Math/interface/Matrix.h"
00014 #include <iostream>
00015 
00016 class EcalWeightSet {
00017 
00018   public:
00019   
00020   typedef math::Matrix<3,10>::type EcalWeightMatrix;
00021   typedef math::Matrix<10,10>::type EcalChi2WeightMatrix;
00022   
00023   EcalWeightSet();
00024   EcalWeightSet(const EcalWeightSet& aset);
00025   ~EcalWeightSet();
00026   
00027   EcalWeightMatrix& getWeightsBeforeGainSwitch() { return wgtBeforeSwitch_; }
00028   EcalWeightMatrix& getWeightsAfterGainSwitch()  { return wgtAfterSwitch_; }
00029   EcalChi2WeightMatrix& getChi2WeightsBeforeGainSwitch()             { return wgtChi2BeforeSwitch_; }
00030   EcalChi2WeightMatrix& getChi2WeightsAfterGainSwitch()             { return wgtChi2AfterSwitch_; }
00031   
00032   const EcalWeightMatrix& getWeightsBeforeGainSwitch() const { return wgtBeforeSwitch_; }
00033   const EcalWeightMatrix& getWeightsAfterGainSwitch()  const { return wgtAfterSwitch_; }
00034   const EcalChi2WeightMatrix& getChi2WeightsBeforeGainSwitch() const { return wgtChi2BeforeSwitch_; }
00035   const EcalChi2WeightMatrix& getChi2WeightsAfterGainSwitch() const { return wgtChi2AfterSwitch_; }
00036   
00037   EcalWeightSet& operator=(const EcalWeightSet& rhs);
00038   
00039   void print(std::ostream& o) const {
00040     using namespace std;
00041     o << "wgtBeforeSwitch_.: " << wgtBeforeSwitch_
00042       << " wgtAfterSwitch_.: " << wgtAfterSwitch_
00043       << " wgtChi2BeforeSwitch_.: " << wgtChi2BeforeSwitch_
00044       << " wgtChi2AfterSwitch_.: " << wgtChi2AfterSwitch_
00045       << endl;
00046   }
00047   
00048   
00049  private:
00050   EcalWeightMatrix wgtBeforeSwitch_;
00051   EcalWeightMatrix wgtAfterSwitch_;
00052   EcalChi2WeightMatrix wgtChi2BeforeSwitch_;
00053   EcalChi2WeightMatrix wgtChi2AfterSwitch_;
00054 };
00055 
00056 #endif