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

3G开发

开发平台:

Visual C++

  1. //
  2. //  File = fsk_demod_bp.h
  3. //
  4. #ifndef _FSK_BP_DEMOD_H_
  5. #define _FSK_BP_DEMOD_H_
  6. #include "signal_T.h"
  7. #include "psmodel.h"
  8. #include "butt_filt_iir.h"
  9. class FskBandpassDemod : public PracSimModel
  10. {
  11. public:
  12.   FskBandpassDemod(  char* instance_nam,
  13.                     PracSimModel* outer_model,
  14.                     Signal< float >* in_sig,
  15.                     Signal< bit_t >* symb_clock_in,
  16.                     Signal< bit_t >* decis_out,
  17.                     Signal< float >* lo_filt_output,
  18.                     Signal< float >* hi_filt_output,
  19.                     Signal< float >* lo_integ_sig,
  20.                     Signal< float >* hi_integ_sig );
  21.   ~FskBandpassDemod(void);
  22.   void Initialize(void);
  23.   int Execute(void);
  24. private:
  25.   double Dly_To_Start;
  26.   double Out_Samp_Intvl;
  27.   double In_Samp_Intvl;
  28.   //double Carrier_Phase_Deg;
  29.   //double Carrier_Phase_Rad;
  30.   int Block_Size;
  31.   Signal< bit_t > *Decis_Out;
  32.   Signal< float > *In_Sig;  
  33.   Signal< float > *Lo_Filt_Output;  
  34.   Signal< float > *Hi_Filt_Output;  
  35.   Signal< float > *Lo_Integ_Sig;  
  36.   Signal< float > *Hi_Integ_Sig;  
  37.   Signal< bit_t > *Symb_Clock_In;  
  38.   int Bits_Per_Symb;
  39.   int Samps_Per_Symb;
  40.   double Lo_Integ_Val;
  41.   double Hi_Integ_Val;
  42.   ButterworthFilterByIir<float> *Lo_Freq_Filter;
  43.   ButterworthFilterByIir<float> *Hi_Freq_Filter;
  44.   ButterworthFilterByIir<float> *Lo_Envel_Filter;
  45.   ButterworthFilterByIir<float> *Hi_Envel_Filter;
  46.   std::complex<float> Conj_Ref;
  47. };
  48. #endif