00001 #ifndef PRETRIGGERNOISEALGORITHM_H 00002 #define PRETRIGGERNOISEALGORITHM_H 00003 00004 #include "AnalysisAlgorithm.h" 00005 00006 namespace SctData { 00007 class DoubleTriggerNoiseTestResult; 00008 } 00009 00010 namespace SctAnalysis { 00011 00012 class PreTriggerNoiseAlgorithm : public AnalysisAlgorithm { 00013 public: 00017 PreTriggerNoiseAlgorithm(shared_ptr<const TestData> testData, const string& moduleName, const AnalysisAlgorithm& alg) throw() : AnalysisAlgorithm(testData, moduleName, alg) {} 00021 virtual ~PreTriggerNoiseAlgorithm() throw(); 00022 00023 virtual void analyze(); 00024 virtual void loadData(); 00025 virtual bool canAnalyze() const; 00026 virtual shared_ptr<SctData::TestResult> createTestResult() const; 00027 virtual boost::shared_ptr<AnalysisAlgorithm> clone(shared_ptr<const TestData> testData, const string& moduleName) const throw(); 00028 private: 00029 PreTriggerNoiseAlgorithm() {} 00030 unsigned short m_scanVariable; 00031 static bool inMap; 00032 }; 00033 } 00034 #endif //#ifndef PRETRIGGERNOISEALGORITHM_H