GNU Radio 3.6.5 C++ API

Finite Impulse Response (FIR) filter design functions. More...
#include <gr_firdes.h>
Public Types  
enum  win_type { WIN_HAMMING = 0, WIN_HANN = 1, WIN_BLACKMAN = 2, WIN_RECTANGULAR = 3, WIN_KAISER = 4, WIN_BLACKMAN_hARRIS = 5, WIN_BLACKMAN_HARRIS = 5 } 
Static Public Member Functions  
static std::vector< float >  low_pass (double gain, double sampling_freq, double cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a lowpass FIR filter  
static std::vector< float >  low_pass_2 (double gain, double sampling_freq, double cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a lowpass FIR filter  
static std::vector< float >  high_pass (double gain, double sampling_freq, double cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a highpass FIR filter  
static std::vector< float >  high_pass_2 (double gain, double sampling_freq, double cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a highpass FIR filter  
static std::vector< float >  band_pass (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a bandpass FIR filter  
static std::vector< float >  band_pass_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a bandpass FIR filter  
static std::vector< gr_complex >  complex_band_pass (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a complex bandpass FIR filter  
static std::vector< gr_complex >  complex_band_pass_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a complex bandpass FIR filter  
static std::vector< float >  band_reject (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a bandreject FIR filter  
static std::vector< float >  band_reject_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) 
use "window method" to design a bandreject FIR filter  
static std::vector< float >  hilbert (unsigned int ntaps=19, win_type windowtype=WIN_RECTANGULAR, double beta=6.76) 
design a Hilbert Transform Filter  
static std::vector< float >  root_raised_cosine (double gain, double sampling_freq, double symbol_rate, double alpha, int ntaps) 
design a Root Cosine FIR Filter (do we need a window?)  
static std::vector< float >  gaussian (double gain, double spb, double bt, int ntaps) 
design a Gaussian filter  
static std::vector< float >  window (win_type type, int ntaps, double beta) 
Finite Impulse Response (FIR) filter design functions.
enum gr_firdes::win_type 
static std::vector<float> gr_firdes::band_pass  (  double  gain, 
double  sampling_freq,  
double  low_cutoff_freq,  
double  high_cutoff_freq,  
double  transition_width,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a bandpass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<float> gr_firdes::band_pass_2  (  double  gain, 
double  sampling_freq,  
double  low_cutoff_freq,  
double  high_cutoff_freq,  
double  transition_width,  
double  attenuation_dB,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a bandpass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
out of band attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow > more taps More attenuation > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<float> gr_firdes::band_reject  (  double  gain, 
double  sampling_freq,  
double  low_cutoff_freq,  
double  high_cutoff_freq,  
double  transition_width,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a bandreject FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<float> gr_firdes::band_reject_2  (  double  gain, 
double  sampling_freq,  
double  low_cutoff_freq,  
double  high_cutoff_freq,  
double  transition_width,  
double  attenuation_dB,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a bandreject FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
out of band attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow > more taps More attenuation > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<gr_complex> gr_firdes::complex_band_pass  (  double  gain, 
double  sampling_freq,  
double  low_cutoff_freq,  
double  high_cutoff_freq,  
double  transition_width,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a complex bandpass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<gr_complex> gr_firdes::complex_band_pass_2  (  double  gain, 
double  sampling_freq,  
double  low_cutoff_freq,  
double  high_cutoff_freq,  
double  transition_width,  
double  attenuation_dB,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a complex bandpass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
out of band attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow > more taps More attenuation > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<float> gr_firdes::gaussian  (  double  gain, 
double  spb,  
double  bt,  
int  ntaps  
)  [static] 
design a Gaussian filter
gain:
overall gain of filter (typically 1.0) symbols
per bit: symbol rate, must be a factor of sample rate ntaps:
number of taps
static std::vector<float> gr_firdes::high_pass  (  double  gain, 
double  sampling_freq,  
double  cutoff_freq,  
double  transition_width,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a highpass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<float> gr_firdes::high_pass_2  (  double  gain, 
double  sampling_freq,  
double  cutoff_freq,  
double  transition_width,  
double  attenuation_dB,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a highpass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
out of band attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow > more taps More attenuation > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<float> gr_firdes::hilbert  (  unsigned int  ntaps = 19 , 
win_type  windowtype = WIN_RECTANGULAR , 

double  beta = 6.76 

)  [static] 
design a Hilbert Transform Filter
ntaps:
Number of taps, must be odd window_type:
What kind of window to use beta:
Only used for Kaiser
static std::vector<float> gr_firdes::low_pass  (  double  gain, 
double  sampling_freq,  
double  cutoff_freq,  
double  transition_width,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a lowpass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<float> gr_firdes::low_pass_2  (  double  gain, 
double  sampling_freq,  
double  cutoff_freq,  
double  transition_width,  
double  attenuation_dB,  
win_type  window = WIN_HAMMING , 

double  beta = 6.76 

)  [static] 
use "window method" to design a lowpass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
required stopband attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow > more taps More attenuatin > more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
static std::vector<float> gr_firdes::root_raised_cosine  (  double  gain, 
double  sampling_freq,  
double  symbol_rate,  
double  alpha,  
int  ntaps  
)  [static] 
design a Root Cosine FIR Filter (do we need a window?)
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) symbol
rate: symbol rate, must be a factor of sample rate alpha:
excess bandwidth factor ntaps:
number of taps
static std::vector<float> gr_firdes::window  (  win_type  type, 
int  ntaps,  
double  beta  
)  [static] 