00001 #ifndef DOUBLETRIGGERNOISEALGORITHM_H 00002 #define DOUBLETRIGGERNOISEALGORITHM_H 00003 00004 #include "AnalysisAlgorithm.h" 00005 00006 namespace SctData { 00007 class DoubleTriggerNoiseTestResult; 00008 } 00009 00010 namespace SctAnalysis { 00011 00012 class DoubleTriggerNoiseAlgorithm : public AnalysisAlgorithm { 00013 public: 00017 DoubleTriggerNoiseAlgorithm(shared_ptr<const TestData> testData, const string& moduleName, const AnalysisAlgorithm& alg) throw() : AnalysisAlgorithm(testData, moduleName, alg) {} 00021 virtual ~DoubleTriggerNoiseAlgorithm() 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 DoubleTriggerNoiseAlgorithm() {} 00030 unsigned short m_scanVariable; 00031 static bool inMap; 00032 }; 00033 } 00034 #endif //#ifndef DOUBLETRIGGERNOISEALGORITHM_H