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