00001 // Author : Samvel Khalatian (samvel at cern dot ch) 00002 // Created: 05/21/08 00003 00004 #ifndef APVANALYSIS_TT6NTPEDESTALCALCULATOR_H 00005 #define APVANALYSIS_TT6NTPEDESTALCALCULATOR_H 00006 00007 #include "CalibTracker/SiStripAPVAnalysis/interface/ApvAnalysis.h" 00008 #include "CalibTracker/SiStripAPVAnalysis/interface/TkPedestalCalculator.h" 00009 00010 /* 00011 * @brief 00012 * This is a replacement of TT6 Pedestal Calculator for NoiseTask source in 00013 * DQM/SiStripCommissioningSources. It's main tasks: 00014 * 1. Retrieve Pedestals from DB 00015 * 2. Return these Pedestals on demand 00016 * Note: no additional calculations performed 00017 */ 00018 class TT6NTPedestalCalculator: public TkPedestalCalculator 00019 { 00020 public: 00021 TT6NTPedestalCalculator(); 00022 virtual ~TT6NTPedestalCalculator() {} 00023 00024 /* 00025 * @brief 00026 * Celar all Pedestals 00027 */ 00028 inline virtual void resetPedestals() { pedestals_.empty(); } 00029 00030 /* 00031 * @brief 00032 * Set Pedestals 00033 */ 00034 inline virtual void setPedestals( ApvAnalysis::PedestalType &rInput) 00035 { pedestals_ = rInput; } 00036 00037 /* 00038 * @brief 00039 * Update Pedestals with set of Raw Signals: plug 00040 */ 00041 inline virtual void updatePedestal( ApvAnalysis::RawSignalType &rInput) {} 00042 00043 /* 00044 * @brief 00045 * Retrieve Pedestals 00046 */ 00047 inline virtual ApvAnalysis::PedestalType pedestal() const { return pedestals_; } 00048 00049 /* 00050 * @brief 00051 * Retrieve Raw Noise 00052 */ 00053 inline virtual ApvAnalysis::PedestalType rawNoise() const { return rawNoise_; } 00054 00055 inline virtual void setNoise( ApvAnalysis::PedestalType &rInput) 00056 { rawNoise_ = rInput; } 00057 00058 /* 00059 * @brief 00060 * Request status flag update: plug 00061 */ 00062 inline virtual void updateStatus() {} 00063 00064 private: 00065 ApvAnalysis::PedestalType pedestals_; 00066 ApvAnalysis::PedestalType rawNoise_; 00067 }; 00068 00069 #endif // APVANALYSIS_TT6NTPEDESTALCALCULATOR_H