MFir.hh

Go to the documentation of this file.
00001 #ifndef _M_FIR_HH_
00002 #define _M_FIR_HH_
00003 
00050 #include "QModule.hh"
00051 #include "QVector.hh"
00052 #include "QFFTFir.hh"
00053 
00054 class MFir : public QModule {
00055 
00056 public:
00058   MFir(QSequence* s);
00059   
00061   ~MFir();
00062   
00064   void Init();
00065   
00067   QEvent* Do(QEvent* ev);
00068   
00070   void Done();
00071 
00072 private:
00073 
00075   void SaveCutFreqByChannel(int channel, double cut_freq);
00076 
00078   void SaveSampFreqByChannel(int channel, double samp_freq);
00079    
00081   inline const std::string& GetFilename() const {return fOutputFile;}
00082 
00084   inline const bool IsSaveFilter() const {return fSaveFilter;}
00085   
00086   std::string fOutputFile;
00087   std::string fWindowName;
00088   bool        fCausal;
00089   bool        fSubSampling;
00090   bool        fSaveFilter;
00091   size_t      fFilterSize;
00092   int         fOldRun;
00093   
00094   QFFT::WindowType fWindowType;
00095 
00096   struct ChannelFilter {
00097     QFFTFir* fFir;
00098     size_t fSubRatio;
00099   };
00100 
00101   std::map<int,ChannelFilter> fChannelFilters;
00102 
00103 
00104 };
00105 
00106 #endif
00107 

Generated on Tue Nov 16 10:49:58 2010 for CUORE Software by  doxygen 1.5.6