00001 #ifndef TkNoiseCalculator_H 00002 #define TkNoiseCalculator_H 00003 00004 #include "CalibTracker/SiStripAPVAnalysis/interface/ApvAnalysis.h" 00005 #include "CalibTracker/SiStripAPVAnalysis/interface/TkStateMachine.h" 00006 00010 class TkNoiseCalculator { 00011 public: 00012 virtual ~TkNoiseCalculator() {} 00014 TkStateMachine* status() {return &theStatus;} 00015 00016 virtual void setStripNoise(ApvAnalysis::PedestalType& in) = 0; 00018 virtual ApvAnalysis::PedestalType noise() const = 0; 00019 virtual float stripNoise(int) const = 0; 00020 00022 virtual void updateStatus() = 0 ; 00023 00024 virtual void resetNoise() = 0; 00025 00026 //Actions 00027 00029 virtual void updateNoise(ApvAnalysis::PedestalType&) = 0; 00031 virtual void newEvent(){} 00032 00033 protected: 00034 TkStateMachine theStatus; 00035 }; 00036 00037 #endif