bart_pdgm_wind.h
上传用户:jtjnyq9001
上传日期:2014-11-21
资源大小:3974k
文件大小:1k
源码类别:

3G开发

开发平台:

Visual C++

  1. //
  2. //  File = bart_pdgm_wind.h
  3. //
  4. #ifndef _BART_PDGM_WIND_H_
  5. #define _BART_PDGM_WIND_H_
  6. #include "psmodel.h"
  7. #include "signal_T.h"
  8. #include "gen_win.h"
  9. #include "window_shapes.h"
  10. template <class T>
  11. class BartlettPeriodogramWindowed : public PracSimModel
  12. {
  13. public:
  14.   BartlettPeriodogramWindowed( char* instance_name,
  15.                     PracSimModel* outer_model,
  16.                     Signal<T>* in_sig );
  17.   ~BartlettPeriodogramWindowed(void);
  18.   void Initialize(void);
  19.   int Execute(void);
  20. private:
  21.   int Block_Size;
  22.   Signal<T> *In_Sig;
  23.   std::complex<double> *Freq_Seg;
  24.   double *Sample_Spectrum;
  25.   double Samp_Intvl;
  26.   T *Time_Seg;
  27.   T *Win_Time_Seg;
  28.   double *Psd_Est;
  29.   int Num_Segs_To_Avg;
  30.   int Segs_In_Est;
  31.   int Fft_Len;
  32.   int Hold_Off;
  33.   int Seg_Len;
  34.   int Samps_Needed;
  35.   char *Psd_File_Name;
  36.   ofstream *Psd_File;
  37.   bool Halt_When_Completed;
  38.   bool Processing_Completed;
  39.   bool Output_In_Decibels;
  40.   bool Plot_Two_Sided;
  41.   bool Using_Window;
  42.   GenericWindow* Data_Window;
  43.   double *Window_Taps;
  44.   WINDOW_SHAPE_T Window_Shape;
  45.   double Delta_F;
  46.   double Norm_Factor;
  47.   double Freq_Norm_Factor;
  48.   double Window_Power;
  49. };
  50. #endif //_BART_PDGM_WIND_H_