⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 iir_dsgn.h

📁 digital filter designer s handbook header files
💻 H
字号:
//
//  File = iir_dsgn.h
//

#ifndef _IIR_DSGN_H_
#define _IIR_DSGN_H_ 

#include <fstream.h>
#include "typedefs.h"

class IirFilterDesign
{
public:
  
  //---------------------
  // default constructor
    
  IirFilterDesign( );
  
  //----------------------------
  // constructor that provides 
  // interactive initialization

  IirFilterDesign( istream& uin,
                   ostream& uout);
                   
  //-------------------------------------
  // constructor that allocates arrays 
  // to hold coefficients 
  
  IirFilterDesign( int num_numer_coeffs,
                   int num_denom_coeffs );
  
  //-------------------------------------
  // constructor that allocates arrays of
  // length num_numer_coeffs and 
  // num_denom_coeffs and then initializes
  // these arrays to values contained in
  // input arrays *numer_coeffs and
  // *denom_coeffs
  
  IirFilterDesign( int num_numer_coeffs,
                   int num_denom_coeffs,
                   double *numer_coeffs,
                   double *denom_coeffs);
                   
  //------------------------------------------ 
  // allocate coefficient array *Imp_Resp_Coeff
  // after default constructor has been used
                   
  void Initialize( int num_numer_coeffs,
                   int num_denom_coeffs );
  
  //-------------------------------------------
  //  method to quantize coefficients

  void QuantizeCoefficients( long quant_factor,
                             logical rounding_enabled );
 
  //-------------------------------------------
  //  method to scale coefficients

  void ScaleCoefficients( double scale_factor );
  
  //----------------------------------------
  // copy coefficients from input array
  // *coeff into array *Imp_Resp_Coeff 
  
  void CopyCoefficients( double *numer_coeff,
                         double *denom_coeff );
  
  //----------------------------------------------
  // dump coefficient set to output_stream 
  
  void DumpCoefficients( ofstream* output_stream);
 
  //----------------------------------
  // get pointers to coefficient arrays 
  
  double* GetNumerCoefficients(void);
  double* GetDenomCoefficients(void);
  
  //---------------------------
  // get number of filter coefficients
  
  int GetNumNumerCoeffs(void);
  int GetNumDenomCoeffs(void);
  
  double GetSamplingInterval(void);
  void SetSamplingInterval(double sampling_interval);
  
protected:
  
  int Num_Numer_Coeffs;
  int Num_Denom_Coeffs;
  
  double* Numer_Coeffs;
  double* Denom_Coeffs;
  double* Orig_Numer_Coeffs;
  double* Orig_Denom_Coeffs;
  double Sampling_Interval;
};

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -