- /*
- * TbUTCommonModeSubtractorAlgorithm.h
- *
- * Created on: Nov 24, 2014
- * Author: ADendek
- */
-
- #pragma once
-
- #include "GaudiAlg/GaudiAlgorithm.h"
-
- #include "TbUTRawData.h"
- #include "TbUTCommonModeSubtractorFactory.h"
- #include "TbUTChannelMaskProvider.h"
- #include "TbUTChannelMaskFileValidator.h"
- #include "TbUTNoiseCalculatorfactory.h"
- #include "TbUTNoise.h"
- #include <boost/shared_ptr.hpp>
-
- namespace TbUT
- {
-
- class CommonModeSubtractorAlgorithm : public GaudiAlgorithm
- {
- typedef boost::shared_ptr<ICommonModeSubtractor> CMSubtractorPtr;
- public:
- CommonModeSubtractorAlgorithm(const std::string& name, ISvcLocator* pSvcLocator);
-
- virtual StatusCode initialize();
- virtual StatusCode execute();
- virtual StatusCode finalize();
- private:
-
- StatusCode initializeBase();
- StatusCode buildSubtractorEngine();
- StatusCode buildNoiseCalculator();
- StatusCode retriveMasksFromFile();
-
- StatusCode getData();
- void processEvent();
- StatusCode skippTreaningEvent();
-
- StatusCode saveNoiseToFile();
-
- RawDataContainer<>* m_dataContainer;
- RawData<>* m_data;
- RawDataContainer<double>* m_outputContainer;
-
-
- std::string m_inputDataLocation;
- std::string m_outputDataLocation;
- std::string m_channelMaskInputLocation;
- std::string m_CMSOption;
- std::string m_noiseCalculatorType;
- std::string m_noiseOutputLocation;
-
- int m_event;
- int m_skipEvent;
-
- ChannelMaskFileValidator m_channelMaskFileValidator;
- ChannelMaskProvider m_channelMaskProvider;
- CommonModeSubtractorFactory m_SubtractorFactory;
- CMSubtractorPtr m_CMSEnginePtr;
- NoiseCalculatorFactory m_noiseCalculatorFactory;
- NoiseCalculatorFactory::NoiseCalcualtorPtr m_noiseCalculatorPtr;
-
- };
-
- }
-
-
-
-