00001
00034 #ifndef _M_COF_H_
00035 #define _M_COF_H_
00036
00037 #include "QCuore.hh"
00038 #include "QModule.hh"
00039 #include "OptimumFilter.hh"
00040 #include "QWienerFilter.hh"
00041
00042 #include <map>
00043
00044 using namespace Cuore;
00045
00046
00047 class MCOF : public QModule {
00048
00049 public:
00050 MCOF(QSequence* s);
00051
00052 virtual ~MCOF();
00053
00054
00055 virtual void Init();
00056
00057
00058 virtual QEvent* Do( QEvent* ev);
00059
00060
00061 virtual void Done();
00062
00063 private:
00065 std::map<int,OptimumFilter*> fOptimumFilter;
00066 std::map<int,WienerFilter*> fWienerFilter;
00067 QVector ofSamples,wfSamples;
00068 int fNumChannels,fPreviousRun,TriggerPos,fNormType,fThreshold;
00069 string AvgPulseFileName;
00070 string nPSFileName;
00071 bool loadFromFile,Diff,LoadFromTXO;
00072 bool fMaxInterpolationOn,fWienerSafe,fWienerOn;
00073
00074 };
00075
00076 #endif