Imported Upstream version 3.2.2
[debian/gnuradio] / grc / blocks / band_pass_filter.xml
1 <?xml version="1.0"?>
2 <!--
3 ###################################################
4 ##Band Pass Filter: Custom wrapper
5 ###################################################
6  -->
7 <block>
8         <name>Band Pass Filter</name>
9         <key>band_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.$(type.fcn)(
13         $gain, $samp_rate, $low_cutoff_freq, $high_cutoff_freq, $width, firdes.$window, $beta))</make>
14         <callback>set_taps(firdes.$(type.fcn)($gain, $samp_rate, $low_cutoff_freq, $high_cutoff_freq, $width, firdes.$window, $beta))</callback>
15         <param>
16                 <name>FIR Type</name>
17                 <key>type</key>
18                 <type>enum</type>
19                 <!-- Real Band Pass Taps -->
20                 <option>
21                         <name>Complex->Complex (Real Taps) (Decim)</name>
22                         <key>fir_filter_ccf</key>
23                         <opt>input:complex</opt>
24                         <opt>output:complex</opt>
25                         <opt>fcn:band_pass</opt>
26                 </option>
27                 <option>
28                         <name>Complex->Complex (Real Taps) (Interp)</name>
29                         <key>interp_fir_filter_ccf</key>
30                         <opt>input:complex</opt>
31                         <opt>output:complex</opt>
32                         <opt>fcn:band_pass</opt>
33                 </option>
34                 <option>
35                         <name>Float->Float (Real Taps) (Decim)</name>
36                         <key>fir_filter_fff</key>
37                         <opt>input:float</opt>
38                         <opt>output:float</opt>
39                         <opt>fcn:band_pass</opt>
40                 </option>
41                 <option>
42                         <name>Float->Float (Real Taps) (Interp)</name>
43                         <key>interp_fir_filter_fff</key>
44                         <opt>input:float</opt>
45                         <opt>output:float</opt>
46                         <opt>fcn:band_pass</opt>
47                 </option>
48                 <!-- Complex Band Pass Taps -->
49                 <option>
50                         <name>Complex->Complex (Complex Taps) (Decim)</name>
51                         <key>fir_filter_ccc</key>
52                         <opt>input:complex</opt>
53                         <opt>output:complex</opt>
54                         <opt>fcn:complex_band_pass</opt>
55                 </option>
56                 <option>
57                         <name>Complex->Complex (Complex Taps) (Interp)</name>
58                         <key>interp_fir_filter_ccc</key>
59                         <opt>input:complex</opt>
60                         <opt>output:complex</opt>
61                         <opt>fcn:complex_band_pass</opt>
62                 </option>
63                 <option>
64                         <name>Float->Complex (Complex Taps) (Decim)</name>
65                         <key>fir_filter_fcc</key>
66                         <opt>input:float</opt>
67                         <opt>output:complex</opt>
68                         <opt>fcn:complex_band_pass</opt>
69                 </option>
70                 <option>
71                         <name>Float->Complex (Complex Taps) (Interp)</name>
72                         <key>interp_fir_filter_fcc</key>
73                         <opt>input:float</opt>
74                         <opt>output:complex</opt>
75                         <opt>fcn:complex_band_pass</opt>
76                 </option>
77         </param>
78         <param>
79                 <name>Decimation</name>
80                 <key>decim</key>
81                 <value>1</value>
82                 <type>int</type>
83                 <hide>#if str($type).startswith('interp') then 'all' else 'none'#</hide>
84         </param>
85         <param>
86                 <name>Interpolation</name>
87                 <key>interp</key>
88                 <value>1</value>
89                 <type>int</type>
90                 <hide>#if str($type).startswith('interp') then 'none' else 'all'#</hide>
91         </param>
92         <param>
93                 <name>Gain</name>
94                 <key>gain</key>
95                 <value>1</value>
96                 <type>real</type>
97         </param>
98         <param>
99                 <name>Sample Rate</name>
100                 <key>samp_rate</key>
101                 <value>samp_rate</value>
102                 <type>real</type>
103         </param>
104         <param>
105                 <name>Low Cutoff Freq</name>
106                 <key>low_cutoff_freq</key>
107                 <type>real</type>
108         </param>
109         <param>
110                 <name>High Cutoff Freq</name>
111                 <key>high_cutoff_freq</key>
112                 <type>real</type>
113         </param>
114         <param>
115                 <name>Transition Width</name>
116                 <key>width</key>
117                 <type>real</type>
118         </param>
119         <param>
120                 <name>Window</name>
121                 <key>window</key>
122                 <type>enum</type>
123                 <option>
124                         <name>Hamming</name>
125                         <key>WIN_HAMMING</key>
126                 </option>
127                 <option>
128                         <name>Hann</name>
129                         <key>WIN_HANN</key>
130                 </option>
131                 <option>
132                         <name>Blackman</name>
133                         <key>WIN_BLACKMAN</key>
134                 </option>
135                 <option>
136                         <name>Rectangular</name>
137                         <key>WIN_RECTANGULAR</key>
138                 </option>
139                 <option>
140                         <name>Kaiser</name>
141                         <key>WIN_KAISER</key>
142                 </option>
143         </param>
144         <param>
145                 <name>Beta</name>
146                 <key>beta</key>
147                 <value>6.76</value>
148                 <type>real</type>
149         </param>
150         <sink>
151                 <name>in</name>
152                 <type>$type.input</type>
153         </sink>
154         <source>
155                 <name>out</name>
156                 <type>$type.output</type>
157         </source>
158         <doc>
159 This filter is a convenience wrapper for an fir filter and a firdes taps generating function.
160
161 Sample rate, cutoff frequency, and transition width are in Hertz.
162
163 The beta paramater only applies to the Kaiser window.
164         </doc>
165 </block>