3 ###################################################
4 ##Low Pass Filter: Custom wrapper
5 ###################################################
8 <name>Low Pass Filter</name>
9 <key>low_pass_filter</key>
10 <import>from gnuradio import gr</import>
11 <import>from gnuradio.gr import firdes</import>
12 <make>gr.$(type)(#if str($type).startswith('interp') then $interp else $decim#, firdes.low_pass(
13 $gain, $samp_rate, $cutoff_freq, $width, $win, $beta))</make>
14 <callback>set_taps(firdes.low_pass($gain, $samp_rate, $cutoff_freq, $width, $win, $beta))</callback>
20 <name>Complex->Complex (Decimating)</name>
21 <key>fir_filter_ccf</key>
22 <opt>input:complex</opt>
23 <opt>output:complex</opt>
26 <name>Complex->Complex (Interpolating)</name>
27 <key>interp_fir_filter_ccf</key>
28 <opt>input:complex</opt>
29 <opt>output:complex</opt>
32 <name>Float->Float (Decimating)</name>
33 <key>fir_filter_fff</key>
34 <opt>input:float</opt>
35 <opt>output:float</opt>
38 <name>Float->Float (Interpolating)</name>
39 <key>interp_fir_filter_fff</key>
40 <opt>input:float</opt>
41 <opt>output:float</opt>
45 <name>Decimation</name>
49 <hide>#if str($type).startswith('interp') then 'all' else 'none'#</hide>
52 <name>Interpolation</name>
56 <hide>#if str($type).startswith('interp') then 'none' else 'all'#</hide>
65 <name>Sample Rate</name>
67 <value>samp_rate</value>
71 <name>Cutoff Freq</name>
72 <key>cutoff_freq</key>
76 <name>Transition Width</name>
83 <value>firdes.WIN_HAMMING</value>
87 <key>firdes.WIN_HAMMING</key>
91 <key>firdes.WIN_HANN</key>
95 <key>firdes.WIN_BLACKMAN</key>
98 <name>Rectangular</name>
99 <key>firdes.WIN_RECTANGULAR</key>
103 <key>firdes.WIN_KAISER</key>
114 <type>$type.input</type>
118 <type>$type.output</type>
121 This filter is a convenience wrapper for an fir filter and a firdes taps generating function.
123 Sample rate, cutoff frequency, and transition width are in Hertz.
125 The beta paramater only applies to the Kaiser window.