Added window option to wxgui fft and waterfall sink.
[debian/gnuradio] / grc / blocks / wxgui_fftsink2.xml
1 <?xml version="1.0"?>
2 <!--
3 ###################################################
4 ##FFT Sink
5 ###################################################
6  -->
7 <block>
8         <name>FFT Sink</name>
9         <key>wxgui_fftsink2</key>
10         <import>from gnuradio import window</import>
11         <import>from gnuradio.wxgui import fftsink2</import>
12         <make>#set $parent = $notebook() and 'self.%s.GetPage(%s)'%$notebook() or 'self'
13 fftsink2.$(type.fcn)(
14         $(parent).GetWin(),
15         baseband_freq=$baseband_freq,
16         y_per_div=$y_per_div,
17         y_divs=$y_divs,
18         ref_level=$ref_level,
19         ref_scale=$ref_scale,
20         sample_rate=$samp_rate,
21         fft_size=$fft_size,
22         fft_rate=$fft_rate,
23         average=$average,
24         avg_alpha=#if $avg_alpha() then $avg_alpha else 'None'#,
25         title=$title,
26         peak_hold=$peak_hold,
27 #if $win()
28         win=$win,
29 #end if
30 #if $win_size()
31         size=$win_size,
32 #end if
33 )
34 #if not $grid_pos()
35 $(parent).Add(self.$(id).win)
36 #else
37 $(parent).GridAdd(self.$(id).win, $(', '.join(map(str, $grid_pos()))))
38 #end if</make>
39         <callback>set_baseband_freq($baseband_freq)</callback>
40         <callback>set_sample_rate($samp_rate)</callback>
41         <param>
42                 <name>Type</name>
43                 <key>type</key>
44                 <value>complex</value>
45                 <type>enum</type>
46                 <option>
47                         <name>Complex</name>
48                         <key>complex</key>
49                         <opt>fcn:fft_sink_c</opt>
50                 </option>
51                 <option>
52                         <name>Float</name>
53                         <key>float</key>
54                         <opt>fcn:fft_sink_f</opt>
55                 </option>
56         </param>
57         <param>
58                 <name>Title</name>
59                 <key>title</key>
60                 <value>FFT Plot</value>
61                 <type>string</type>
62         </param>
63         <param>
64                 <name>Sample Rate</name>
65                 <key>samp_rate</key>
66                 <value>samp_rate</value>
67                 <type>real</type>
68         </param>
69         <param>
70                 <name>Baseband Freq</name>
71                 <key>baseband_freq</key>
72                 <value>0</value>
73                 <type>real</type>
74         </param>
75         <param>
76                 <name>Y per Div</name>
77                 <key>y_per_div</key>
78                 <value>10</value>
79                 <type>enum</type>
80                 <option>
81                         <name>1 dB</name>
82                         <key>1</key>
83                 </option>
84                 <option>
85                         <name>2 dB</name>
86                         <key>2</key>
87                 </option>
88                 <option>
89                         <name>5 dB</name>
90                         <key>5</key>
91                 </option>
92                 <option>
93                         <name>10 dB</name>
94                         <key>10</key>
95                 </option>
96                 <option>
97                         <name>20 dB</name>
98                         <key>20</key>
99                 </option>
100         </param>
101         <param>
102                 <name>Y Divs</name>
103                 <key>y_divs</key>
104                 <value>10</value>
105                 <type>int</type>
106         </param>
107         <param>
108                 <name>Ref Level (dB)</name>
109                 <key>ref_level</key>
110                 <value>50</value>
111                 <type>real</type>
112         </param>
113         <param>
114                 <name>Ref Scale (p2p)</name>
115                 <key>ref_scale</key>
116                 <value>2.0</value>
117                 <type>real</type>
118         </param>
119         <param>
120                 <name>FFT Size</name>
121                 <key>fft_size</key>
122                 <value>1024</value>
123                 <type>int</type>
124         </param>
125         <param>
126                 <name>Refresh Rate</name>
127                 <key>fft_rate</key>
128                 <value>30</value>
129                 <type>int</type>
130         </param>
131         <param>
132                 <name>Peak Hold</name>
133                 <key>peak_hold</key>
134                 <value>False</value>
135                 <type>enum</type>
136                 <hide>#if $peak_hold() == 'True' then 'none' else 'part'#</hide>
137                 <option>
138                         <name>On</name>
139                         <key>True</key>
140                 </option>
141                 <option>
142                         <name>Off</name>
143                         <key>False</key>
144                 </option>
145         </param>
146         <param>
147                 <name>Average</name>
148                 <key>average</key>
149                 <value>False</value>
150                 <type>enum</type>
151                 <hide>part</hide>
152                 <option>
153                         <name>On</name>
154                         <key>True</key>
155                 </option>
156                 <option>
157                         <name>Off</name>
158                         <key>False</key>
159                 </option>
160         </param>
161         <param>
162                 <name>Average Alpha</name>
163                 <key>avg_alpha</key>
164                 <value>0</value>
165                 <type>real</type>
166                 <hide>#if $average() == 'True' then 'none' else 'all'#</hide>
167         </param>
168         <param>
169                 <name>Window</name>
170                 <key>win</key>
171                 <value>None</value>
172                 <type>raw</type>
173                 <hide>#if $win() is None then 'part' else 'none'#</hide>
174                 <option>
175                         <name>Automatic</name>
176                         <key>None</key>
177                 </option>
178                 <option>
179                         <name>Blackman-Harris</name>
180                         <key>window.blackmanharris</key>
181                 </option>
182                 <option>
183                         <name>Hamming</name>
184                         <key>window.hamming</key>
185                 </option>
186                 <option>
187                         <name>Hanning</name>
188                         <key>window.hanning</key>
189                 </option>
190                 <option>
191                         <name>Rectangular</name>
192                         <key>window.rectangular</key>
193                 </option>
194                 <option>
195                         <name>Flattop</name>
196                         <key>window.flattop</key>
197                 </option>
198         </param>
199         <param>
200                 <name>Window Size</name>
201                 <key>win_size</key>
202                 <value></value>
203                 <type>int_vector</type>
204                 <hide>#if $win_size() then 'none' else 'part'#</hide>
205         </param>
206         <param>
207                 <name>Grid Position</name>
208                 <key>grid_pos</key>
209                 <value></value>
210                 <type>grid_pos</type>
211         </param>
212         <param>
213                 <name>Notebook</name>
214                 <key>notebook</key>
215                 <value></value>
216                 <type>notebook</type>
217         </param>
218         <check>not $win_size or len($win_size) == 2</check>
219         <sink>
220                 <name>in</name>
221                 <type>$type</type>
222         </sink>
223         <doc>
224 Set Average Alpha to 0 for automatic setting.
225
226 Leave the window blank for the default size, otherwise enter a tuple of (width, height) pixels.
227
228 Use the Grid Position (row, column, row span, column span) to position the graphical element in the window.
229
230 Use the Notebook Param (notebook-id, page-index) to place the graphical element inside of a notebook page.
231         </doc>
232 </block>