Imported Upstream version 3.0.4
[debian/gnuradio] / gnuradio-core / ChangeLog
1 2006-08-01  Achilleas Anastasopoulos <anastas@umich.edu>
2
3         * src/lib/general/gr_packed_to_unpacked_XX.cc.t,
4         src/lib/general/gr_unpacked_to_packed_XX.cc.t: fixed bug in
5         multiple stream support.
6
7 2006-07-06  Tom Rondeau  <trondeau@vt.edu>
8
9         * src/python/gnuradio/blksimpl/gmsk2.py:
10         Added AGC to GMSK code.
11         
12 2006-07-06  Tom Rondeau  <trondeau@vt.edu>
13
14         * src/python/gnuradio/blksimpl/Makefile.am: 
15         Call to gmsk.py was causing error after removal of gmsk.py file.
16         Removed call in Makefile.am to this.
17
18 2006-07-05  Eric Blossom  <eb@comsec.com>
19
20         * src/python/gnuradio/blksimpl/gmsk.py: Removed long deprecated
21         code.  We'll give this a week or so for the dust to settle, then
22         we'll rename gmsk2.py to gmsk.py
23
24 2006-06-29  Tom Rondeau  <trondeau@vt.edu>
25
26         * src/lib/general/gr_correlate_access_code_bb.cc (work): 
27         Removed branches; cleaned up code to only deal with a 180 degree phase shift in
28         BPSK.
29
30 2006-06-28  Tom Rondeau   <trondeau@vt.edu>
31
32         * src/python/gnuradio/gr/qa_correlate_access_code.py (test_correlate_access_code.test_001):
33         Changes to access code correlator to handle BPSK phase reversal 
34         killed qa_correlate_access_code. Modified the access code search in
35         test_001 to all the test to pass properly.
36
37 2006-06-28  Tom Rondeau  <trondeau@vt.edu>
38
39         * src/lib/general/gr_constellation_decoder_cb.cc: 
40         Set Compute_EVN=false by default (to clean up the output)
41
42 2006-06-20  Tom Rondeau  <trondeau@vt.edu>
43
44         * src/lib/general/gr_costas_loop_cc.{h,cc,i}: modified to support
45         both BPSK and QPSK via "order" constructor argument.  Removed
46         unused ref_phase ctor arg.
47         
48 2006-06-20  Eric Blossom  <eb@comsec.com>
49
50         * src/lib/general/gr_probe_avg_mag_sqrd_{f,c}.{h,cc,i}: added accessor
51         for threshold.
52
53         * src/python/gnuradio/blksimpl/pkt.py: result of refactoring
54         gmsk2_pkt.py.  This is the common packet handling framework, and
55         is modulation independent.  gmsk2_pkt is now deprecated.
56
57         * src/python/gnuradio/blksimpl/gmsk2_pkt.py: added deprecation warning.
58         
59         * src/python/gnuradio/packet_utils.py (make_packet): added
60         bits_per_baud parameter to handle QPSK, etc in the future.
61
62 2006-06-17  Eric Blossom  <eb@comsec.com>
63
64         * src/lib/runtime/gr_realtime.{h,cc,i}: new function to enable
65         realtime scheduling.
66
67 2006-06-15  Eric Blossom  <eb@comsec.com>
68
69         * src/lib/io/gr_oscope_guts.{h,cc,i},
70         src/lib/io/gr_oscope_sink_x.{h,cc}: added set_sample_rate method.
71
72         * src/lib/general/gr_keep_one_in_n.{h,cc,i}: added set_n method.
73
74 2006-06-13  Eric Blossom  <eb@comsec.com>
75
76         * src/lib/general/gr_binary_slicer_fb.h: corrected calling sequence.
77
78 2006-06-08  Eric Blossom  <eb@comsec.com>
79
80         * src/lib/general/gr_feval.{h,cc,i},
81         src/python/gnuradio/gr/qa_feval.py: new C++/python helper that
82         allows C++ code to evaluate a function defined in Python.  Uses
83         SWIG directors.
84
85 2006-06-06  Eric Blossom  <eb@comsec.com>
86
87         * src/lib/general/gr_unpack_k_bits_bb.cc (work): bug fix.  Was
88         computing the wrong answer and writing *way* too much data if k was > 1.
89         * src/python/gnuradio/gr/qa_unpack_k_bits.py: new ;)
90
91         * src/lib/general/gr_diff_decoder_bb.{h,cc,i}: new.  differential
92         decoder.  constellation index in / constellation index out.
93
94         * src/lib/general/gr_map_bb.{h,cc,i}: new.  map any byte into any
95         other byte.
96
97 2006-06-01  Eric Blossom  <eb@comsec.com>
98
99         * src/lib/filter/ccomplex_dotprod_3dnow64.S,
100         src/lib/filter/3dnow_float_dotprod_really_simple.S,
101         src/lib/filter/3dnow_float_dotprod_simple.S,
102         src/lib/filter/assembly.h,
103         src/lib/filter/ccomplex_dotprod_3dnow.S,
104         src/lib/filter/ccomplex_dotprod_3dnow64.S,
105         src/lib/filter/ccomplex_dotprod_3dnowext.S,
106         src/lib/filter/ccomplex_dotprod_3dnowext64.S,
107         src/lib/filter/ccomplex_dotprod_sse.S,
108         src/lib/filter/ccomplex_dotprod_sse64.S,
109         src/lib/filter/complex_dotprod_3dnow.S,
110         src/lib/filter/complex_dotprod_3dnow64.S,
111         src/lib/filter/complex_dotprod_3dnowext.S,
112         src/lib/filter/complex_dotprod_3dnowext64.S,
113         src/lib/filter/complex_dotprod_sse.S,
114         src/lib/filter/complex_dotprod_sse64.S,
115         src/lib/filter/fcomplex_dotprod_3dnow.S,
116         src/lib/filter/fcomplex_dotprod_3dnow64.S,
117         src/lib/filter/fcomplex_dotprod_sse.S,
118         src/lib/filter/fcomplex_dotprod_sse64.S,
119         src/lib/filter/float_dotprod_3dnow.S,
120         src/lib/filter/float_dotprod_3dnow64.S,
121         src/lib/filter/float_dotprod_sse.S,
122         src/lib/filter/float_dotprod_sse64.S,
123         src/lib/filter/short_dotprod_mmx.S,
124         src/lib/filter/short_dotprod_mmx64.S: changed all occurrences of
125         .align 16 to .p2align 4 to avoid ambiguous interpretation of .align
126         argument.
127
128         
129 2006-05-29  Eric Blossom  <eb@comsec.com>
130
131         * src/python/gnuradio/blksimpl/gmsk2_pkt.py: now uses string of 1's
132         and 0's for access_code representation.  Refactored to use
133         correlate_access_code_bb and frame_sink_1 instead of packet_sink.
134
135         * src/lib/general/gr_binary_slicer_fb.{h,cc,i}: new
136         * src/lib/general/gr_qpsk_slicer_cb.{h,cc,i}: deleted.  Use
137         gr_constellation_decoder_cb instead.
138
139 2006-05-29  Eric Blossom  <eb@comsec.com>
140         
141         * src/lib/general/gr_clock_recovery_mm_cc.cc: revised
142         implementation based on G. R. Danesfahani, T.G. Jeans,
143         "Optimisation of modified Mueller and Muller algorithm,"
144         Electronics Letters, Vol. 31, no. 13, 22 June 1995, pp. 1032 - 1033.
145         Thanks Tom!
146         
147         * src/utils/cool.m, src/utils/db_width.m, src/utils/filter_tools.m,
148         src/utils/read_char_binary.m, src/utils/read_complex_binary.m,
149         src/utils/read_float_binary.m, src/utils/read_int_binary.m, 
150         src/utils/read_short_binary.m: modified to be compatible with
151         MATLAB.
152         
153 2006-05-26  Eric Blossom  <eb@comsec.com>
154
155         * src/lib/general/gr_framer_sink_1.{h,cc,i}: new.  Refactored from
156         gr_packet_sink.  Use in combination with gr_correlate_access_code_bb.
157
158 2006-05-24  Eric Blossom  <eb@comsec.com>
159
160         * src/lib/general/gr_diff_encoder_bb.{h,cc,i}: new. differential encoder.
161
162         * src/lib/general/gr_constellation_decoder_cb.{h,cc,i}: new.
163         Maps i/q value to closest constellation point and return value
164         associated with the point. This probably obsoletes 
165         gr_qpsk_slicer_cb.
166
167         * src/lib/general/gr_qpsk_slicer_cb.{h,cc,i}: new.
168         * src/lib/general/gr_unpack_k_bits_bb.{h,cc,i}: unpack bytes
169         containing k valid bits, into bytes, 1 bit per byte.
170
171         * src/lib/general/gr_correlate_access_code_bb.{h,cc,i}: new.
172         General purpose block for searching for access codes (sync
173         vectors).  Can handle any sync vector between 1 and 64 bits.
174
175 2006-05-23  Eric Blossom  <eb@comsec.com>
176
177         * src/lib/general/gr_diff_phasor_cc.{h,cc,i}: new.  Compute phase
178         difference as a complex number between adjacent complex items in
179         stream.  This is useful for demodulating differentially encoded PSK.
180
181         * src/python/gnuradio/gruimpl/mathmisc.py (log2): new function.
182
183         * src/lib/general/gr_firdes.cc (root_raised_cosine): force ntaps
184         to be odd.
185
186 2006-05-21  Martin Dudok van Heel <nldudok1 at olifantasia.com>
187
188         Added generic test class gr_test.
189         gr_test is a gnuradio block meant to be used in a flow_graph.
190         It doesn't do much processing, but you can specify from python every parameter you need to for testing.
191         For example history, output_multiple, input and output signature, decimation and such.
192         Especially handy for testing setting up the buffers.
193         It also touches every available input and output to check for segfaults.
194         You can also instruct it to not consume all ninput_items or not produce all noutput_items.
195         
196         There is also a new script test_buffers.py in src/tests which uses gr_test to test setting up the buffers.
197         It is NOT automatically run by make check yet, because it will fail with an assert when it reaches circbuf memory limit of the system.
198         (On linux: Trying to setup a buffer >shmmax
199         Note that you can set the smmax limit manually on a linux 2.6 system in the following way in a root console)
200         #set shmmax limit manually to 300MB
201         echo 300000000 >/proc/sys/kernel/shmmax
202
203         * src/lib/general/Makefile.am: added gr_test
204         * src/lib/general/general.i: added gr_test
205         * src/lib/general/gr_test.cc: new
206         * src/lib/general/gr_test.h: new
207         * src/lib/general/gr_test.i: new
208         * src/lib/general/gr_test_types.h: new
209         * src/tests/test_buffers.py: new script to test setting up the buffers using gr_test
210
211 2006-05-21  Martin Dudok van Heel <nldudok1 at olifantasia.com>
212
213         Solved the following bugs which result from incorrect buffersize setup:
214         sched: <gr_block gr_test (21)> is requesting more input data
215           than we can provide.
216           ninput_items_required = 8192
217           max_possible_items_available = 8191
218           If this is a filter, consider reducing the number of taps.
219
220         python: src/lib/runtime/gr_buffer.h:108: unsigned int gr_buffer::index_sub(unsigned int, unsigned int):
221          Assertion `(unsigned) s < d_bufsize' failed.
222         Aborted
223
224         * src/python/gnuradio/gr/flow_graph.py: resolved above bugs by adding + mdown.history() to nitems when appropriate
225
226 2006-04-24  Eric Blossom  <eb@comsec.com>
227
228         * src/lib/general/gr_chunks_to_symbols_XX.{h,cc,i}.t,
229         src/lib/general/gr_packed_to_unpacked_XX.{h,cc,i}.t,
230         src/lib/general/gr_unpacked_to_packed_XX.{h,cc,i}.t: 
231         new pseudo-templates for generating family of blocks.  Patch
232         submitted by Achilleas Anastasopoulos <anastas@umich.edu>, touched
233         up by Eric.
234
235 2006-04-24  Martin Dudok van Heel <nldudok1 at olifantasia.com>
236
237         * src/python/gnuradio/gr/flow_graph.py (buffer_sizes.allocate):
238         increase buffer size allocation for blocks with a large
239         output_multiple, not just those that are decimators.
240
241 2006-04-05  Eric Blossom  <eb@comsec.com>
242
243         * src/lib/general/gr_pll_carriertracking_cc.i: added
244         squelch_enable and set_lock_threshold methods.
245
246         * src/lib/general/gr_clock_recovery_mm_cc.h: removed erroneous
247         class prefix to method.  GCC 4.1.0 complains ;)
248
249 2006-04-03  Eric Blossom  <eb@comsec.com>
250
251         * src/lib/general/gr_pll_carriertracking_cc.cc (phase_detector):
252         fixed typo.
253
254         * src/python/gnuradio/gr/prefs.py: don't load prefs if
255         GR_DONT_LOAD_PREFS environment variable is set.  run_tests sets
256         this to avoid interactions with system and user prefs during
257         make check.
258
259         * src/python/gnuradio/gr/qa_rational_resampler.py: disabled two
260         tests that were causing hangs on SuSE 10.0.  Should be investigated.
261
262 2006-03-30  Eric Blossom  <eb@comsec.com>
263
264         * src/lib/filter/gr_fft_filter_ccc.{h,cc},
265         src/lib/filter/gr_fft_filter_fff.{h,cc}: reworked to allow
266         safer setting of new taps after instantiation.
267
268 2006-03-29  Eric Blossom  <eb@comsec.com>
269
270         * src/lib/general/gr_prefix.{h,cc,i}: new function that returns
271         installation prefix directory (--prefix argument to configure).
272
273         * src/lib/general/gr_prefs.{h,cc,i}: reworked implementation to
274         use python ConfigParser.
275         * src/python/gnuradio/gr/prefs.py: moved from
276         src/python/gnuradio/prefs.py to solve initialization problem.
277
278         * src/lib/general/gr_stream_to_vector.{h,cc,i}: renamed from gr_serial_to_parallel
279         * src/lib/general/gr_vector_to_stream.{h,cc,i}: renamed from gr_parallel_to_serial
280         * src/lib/python/gnuradio/gr/__init__.py: new aliases for
281         backwards compatibility with rename.
282
283         * src/lib/swig/Makefile.am: cleanup for make distcheck.
284
285         * src/lib/atsc/GrAtscBitTimingLoop.cc, GrAtscBitTimingLoop.h,
286         GrAtscBitTimingLoop2.cc, GrAtscBitTimingLoop2.h,
287         GrAtscBitTimingLoop3.cc, GrAtscBitTimingLoop3.h,
288         GrAtscConvert2xTo20.cc, GrAtscConvert2xTo20.h,
289         GrAtscDataSegToSoftDataSeg.cc, GrAtscDataSegToSoftDataSeg.h,
290         GrAtscDeinterleaver.cc, GrAtscDeinterleaver.h,
291         GrAtscDerandomizer.cc, GrAtscDerandomizer.h,
292         GrAtscEqualizer.cc, GrAtscEqualizer.h, GrAtscFPLL.cc,
293         GrAtscFPLL.h, GrAtscFieldSyncChecker.cc,
294         GrAtscFieldSyncChecker.h, GrAtscFieldSyncCorrelator.cc,
295         GrAtscFieldSyncCorrelator.h, GrAtscFieldSyncDemux.cc,
296         GrAtscFieldSyncDemux.h, GrAtscFieldSyncMux.cc,
297         GrAtscFieldSyncMux.h, GrAtscInterleaver.cc,
298         GrAtscInterleaver.h, GrAtscRSDecoder.cc, GrAtscRSDecoder.h,
299         GrAtscRSEncoder.cc, GrAtscRSEncoder.h, GrAtscRandomizer.cc,
300         GrAtscRandomizer.h, GrAtscSegSymSync.cc, GrAtscSegSymSync.h,
301         GrAtscSegSymSyncImpl.cc, GrAtscSegSymSyncImpl.h,
302         GrAtscSegSymSyncImpl_export.h, GrAtscSymbolMapper.h,
303         GrAtscTrellisEncoder.cc, GrAtscTrellisEncoder.h,
304         GrAtscViterbiDecoder.cc, GrAtscViterbiDecoder.h, Makefile.am,
305         README, atsc_basic_trellis_encoder.cc,
306         atsc_basic_trellis_encoder.h, atsc_consts.h,
307         atsc_data_interleaver.cc, atsc_data_interleaver.h,
308         atsc_diag_output.h, atsc_equalizer.cc, atsc_equalizer.h,
309         atsc_equalizer_lms.cc, atsc_equalizer_lms.h,
310         atsc_equalizer_lms2.cc, atsc_equalizer_lms2.h,
311         atsc_equalizer_nop.cc, atsc_equalizer_nop.h, atsc_exp2_lp.cc,
312         atsc_exp2_lp.h, atsc_exp2_lp20.dat, atsc_exp2_lp2x.dat,
313         atsc_fake_single_viterbi.cc, atsc_fake_single_viterbi.h,
314         atsc_fs_checker.cc, atsc_fs_checker.h,
315         atsc_fs_checker_naive.cc, atsc_fs_checker_naive.h,
316         atsc_fs_correlator.cc, atsc_fs_correlator.h,
317         atsc_fs_correlator_naive.cc, atsc_fs_correlator_naive.h,
318         atsc_pnXXX.cc, atsc_pnXXX.h, atsc_randomizer.cc,
319         atsc_randomizer.h, atsc_reed_solomon.cc, atsc_reed_solomon.h,
320         atsc_root_raised_cosine.cc, atsc_root_raised_cosine.h,
321         atsc_root_raised_cosine_bandpass.cc,
322         atsc_root_raised_cosine_bandpass.h, atsc_single_viterbi.cc,
323         atsc_single_viterbi.h, atsc_slicer_agc.h,
324         atsc_sliding_correlator.cc, atsc_sliding_correlator.h,
325         atsc_sssr.cc, atsc_sssr.h, atsc_syminfo.h, atsc_sync_tag.h,
326         atsc_trellis_encoder.cc, atsc_trellis_encoder.h, atsc_types.h,
327         atsc_viterbi_decoder.cc, atsc_viterbi_decoder.h,
328         atsc_viterbi_gen.cc, atsc_vsbtx_lp.cc, atsc_vsbtx_lp.dat,
329         atsc_vsbtx_lp.h, convolutional_interleaver.h,
330         create_atsc_equalizer.cc, create_atsc_equalizer.h,
331         create_atsc_fs_checker.cc, create_atsc_fs_checker.h,
332         create_atsc_fs_correlator.cc, create_atsc_fs_correlator.h,
333         fpll_btloop_coupling.h, gen_encoder.py, interleaver_fifo.h,
334         plinfo.cc, qa_atsc.cc, qa_atsc.h,
335         qa_atsc_basic_trellis_encoder.cc,
336         qa_atsc_basic_trellis_encoder.h, qa_atsc_data_interleaver.cc,
337         qa_atsc_data_interleaver.h, qa_atsc_equalizer_nop.cc,
338         qa_atsc_equalizer_nop.h, qa_atsc_fake_single_viterbi.cc,
339         qa_atsc_fake_single_viterbi.h, qa_atsc_fs_correlator.cc,
340         qa_atsc_fs_correlator.h, qa_atsc_randomizer.cc,
341         qa_atsc_randomizer.h, qa_atsc_reed_solomon.cc,
342         qa_atsc_reed_solomon.h, qa_atsc_single_viterbi.cc,
343         qa_atsc_single_viterbi.h, qa_atsc_sliding_correlator.cc,
344         qa_atsc_sliding_correlator.h, qa_atsc_trellis_encoder.cc,
345         qa_atsc_trellis_encoder.h,
346         qa_atsc_trellis_encoder_t1_input.dat,
347         qa_atsc_trellis_encoder_t1_output.dat,
348         qa_atsc_viterbi_decoder.cc, qa_atsc_viterbi_decoder.h,
349         qa_atsc_viterbi_decoder_t1_input.dat,
350         qa_atsc_viterbi_decoder_t1_output.dat,
351         qa_convolutional_interleaver.cc,
352         qa_convolutional_interleaver.h, qa_interleaver_fifo.cc,
353         qa_interleaver_fifo.h: Moved all atsc code from src/lib/atsc to
354         new gr-atsc CVS module.
355         
356         * src/lib/general/gri_ringbuffer.{h,cc}: removed.  Use
357         gr_buffer/gr_buffer_reader instead.
358
359 2006-03-27  Eric Blossom  <eb@comsec.com>
360
361         * src/lib/general/gr_prefs.{h,cc,i}: renamed parameter from "val" to
362         "v" to work around issue in SWIG 1.3.{28,29} and/or g++ 4.0.2.
363
364         * src/lib/general/gr_prefs.{h,cc,i}, src/python/gnuradio/prefs.py:
365         new class for user preferences.  This uses SWIG directors (serious
366         magic), to have the actual implementation be in python, but
367         callable transparently from C++.  We'll use this for user prefs
368         such as audio module, audio module options, etc.
369
370 2006-03-25  Eric Blossom  <eb@comsec.com>
371
372         * src/lib/io/gri_logger.h (class gri_logger): new class that can
373         safely log to a file from within a JACK or portaudio callback.
374         Uses a ringbuffer to communicate with a separate thread that
375         writes the file.
376
377 2006-03-17  Eric Blossom  <eb@comsec.com>
378
379         * src/lib/runtime/gr_buffer.cc (gr_buffer_reader): added missing
380         drop_reader call to destructor.  Fixed latent bug.
381
382 2006-03-15  Eric Blossom  <eb@comsec.com>
383
384         * src/lib/omnithread.h,
385         src/lib/omnithread/ot_posix.h, src/lib/omnithread/posix.cc,
386         src/lib/omnithread/nt.cc: mods to
387         allow specifying a max count on semaphores. This allows the
388         construction of binary semaphores by passing max_count=1 to the ctor.
389         The default behavior is unchanged.
390
391 2006-03-13  Eric Blossom  <eb@comsec.com>
392
393         * src/lib/general/gr_pll_carriertracking_cc.cc (work): refactored
394         loop control.
395
396 2006-03-12  Stephane Fillod  <f8cfe@free.fr>
397         * src/lib/general/gri_ringbuffer.{cc,h},
398           src/lib/general/Makefile.am: new lockless ringbuffer (single
399           reader/single writer) taken from JACK software (GPL).
400         * * src/lib/omnithread/omnithread.h: add omni_mutex::trylock
401         * * src/lib/omnithread/ot_posix.h: POSIX trylock implementation
402         * * src/lib/omnithread/ot_nt.h: Win32 trylock implementation
403
404 2006-03-12  Eric Blossom  <eb@comsec.com>
405
406         * src/lib/general/gr_firdes.h, src/lib/io/gr_file_source.h: Fix
407         for g++ 4.1.  Removed extra class:: qualification.  Patch
408         submitted by Martin Michlmayr <tbm@cyrius.com>
409
410 2006-03-10  Eric Blossom  <eb@comsec.com>
411
412         * src/lib/general/gr_dd_mpsk_sync_cc.cc: doc fixes.  reworked
413         delay line handling.
414         * src/lib/general/gr_dd_mpsk_sync_cc.h: doc fixes.  Added DLLEN const.
415         * src/lib/general/gr_costas_loop_cc.h: doc fixes.
416         * src/lib/general/gr_costas_loop_cc.cc (work): cosmetic tweak to
417         loop control.
418
419 2006-03-07  Eric Blossom  <eb@comsec.com>
420
421         * src/lib/general/gr_multiply_const_XX.h.t,
422         src/lib/general/gr_quadrature_demod_cf.h,
423         src/lib/general/gr_frequency_modulator_fc.h,
424         src/lib/general/gr_packed_to_unpacked_bb.h,
425         src/lib/general/gr_unpacked_to_packed_bb.h,
426         src/lib/general/gr_chunks_to_symbols_bf.h,
427         src/lib/general/gr_chunks_to_symbols_bc.h: doc fixs.
428
429 2006-02-22  Martin Dudok van Heel <nldudok1 at olifantasia.com>
430
431         Addded new blocks gr_single_pole_iir_filter_cc
432                           gr_agc_cc
433                           gr_phase_modulator_fc
434         Changed gr_single_pole_iir.h  to make this work
435         Bugfix, to make make_check work again.
436
437         * src/lib/filter/Makefile.am: Added gr_single_pole_iir_filter_cc
438         Added missing gr_single_pole_avg.h and gr_single_pole_rec.h (fix make check bug)
439         * src/lib/filter/filter.i: changed. Added gr_single_pole_iir_filter_cc
440         * src/lib/filter/gr_single_pole_iir.h: changed template to have
441         partial specialization for <gr_complex,i_type,double>.  Needed
442         because calculations and temporary variables have to be
443         gr_complexd in this special case
444         * src/lib/filter/gr_single_pole_iir_filter_cc.cc: new
445         * src/lib/filter/gr_single_pole_iir_filter_cc.h: new
446         * src/lib/filter/gr_single_pole_iir_filter_cc.i: new
447         * src/lib/general/Makefile.am: changed. Added gr_agc_cc, gr_phase_modulator_fc,gri_agc_cc
448         * src/lib/general/general.i: changed. Added gr_agc_cc, gr_phase_modulator_fc
449         * src/lib/general/gr_agc_cc.cc: new
450         * src/lib/general/gr_agc_cc.h: new
451         * src/lib/general/gr_agc_cc.i: new
452         * src/lib/general/gr_phase_modulator_fc.cc: new
453         * src/lib/general/gr_phase_modulator_fc.h: new
454         * src/lib/general/gr_phase_modulator_fc.i: new
455         * src/lib/general/gri_agc_cc.h: new
456         * src/lib/general/gri_agc_cc.i: new
457         * src/python/gnuradio/gr/Makefile.am: changed. Added qa_single_pole_iir_cc.py
458         * src/python/gnuradio/gr/qa_single_pole_iir_cc.py: new
459         
460 2006-02-17  Stephane Fillod  <f8cfe@free.fr>
461
462         * configure.ac, src/lib/filter/ccomplex_dotprod_generic.cc,
463         src/lib/filter/complex_dotprod_generic.cc,
464         src/lib/filter/generate_gr_fir_sysconfig.py,
465         src/lib/filter/generate_gr_fir_sysconfig_generic.py,
466         src/lib/filter/generate_gr_fir_util.py,
467         src/lib/filter/gr_fir_XXX.cc.t,
468         src/lib/filter/gr_fir_XXX_generic.cc.t,
469         src/lib/filter/gr_fir_ccc_simd.cc,
470         src/lib/filter/gr_fir_ccc_x86.cc,
471         src/lib/filter/gr_fir_ccf_simd.cc,
472         src/lib/filter/gr_fir_ccf_x86.cc,
473         src/lib/filter/gr_fir_fcc_simd.cc,
474         src/lib/filter/gr_fir_fcc_x86.cc,
475         src/lib/filter/gr_fir_fff_simd.cc,
476         src/lib/filter/gr_fir_fff_x86.cc,
477         src/lib/filter/gr_fir_fsf_simd.cc,
478         src/lib/filter/gr_fir_fsf_x86.cc,
479         src/lib/filter/gr_fir_scc_simd.cc,
480         src/lib/filter/gr_fir_scc_x86.cc,
481         src/lib/filter/gr_fir_sysconfig_x86.cc,
482         src/lib/filter/gri_mmse_fir_interpolator.cc,
483         src/lib/filter/gri_mmse_fir_interpolator_cc.cc,
484         src/lib/filter/sysconfig_x86.cc,
485         src/lib/general/gr_align_on_samplenumbers_ss.cc,
486         src/lib/general/gr_crc32.cc,
487         src/lib/general/gr_head.cc,
488         src/lib/general/gr_lfsr_32k_source_s.cc,
489         src/lib/general/gr_noise_source_X.cc.t,
490         src/lib/general/gr_nop.cc,
491         src/lib/general/gr_reverse.cc,
492         src/lib/general/gr_sig_source_X.cc.t,
493         src/lib/general/gr_simple_correlator.cc,
494         src/lib/general/gr_simple_framer.cc,
495         src/lib/general/gr_skiphead.cc,
496         src/lib/general/gr_vector_sink_X.cc.t,
497         src/lib/general/gr_vector_source_X.cc.t,
498         src/lib/general/qa_gr_fxpt.cc,
499         src/lib/general/qa_gr_fxpt_nco.cc,
500         src/lib/general/qa_gr_fxpt_vco.cc,
501         src/lib/io/gr_oscope_guts.cc,
502         src/lib/runtime/gr_io_signature.cc,
503         src/lib/runtime/gr_types.h,
504         src/lib/runtime/qa_gr_block.cc,
505         src/lib/runtime/qa_gr_buffer.cc,
506         src/lib/runtime/qa_gr_io_signature.cc: added proper config check
507         for stdint.h to define gr_int* types.
508
509 2006-02-16  Eric Blossom  <eb@comsec.com>
510
511         * src/lib/runtime/gr_types.h: added typedef for gr_int64 and
512         gr_uint64.  Need proper autoconf fix for these.
513
514 2006-02-08  Eric Blossom  <eb@comsec.com>
515
516         * src/lib/io/gr_file_sink.{h,cc,i}: added new methods: enable &
517         disable.  Thanks Marcus!
518
519 2006-02-06  Eric Blossom  <eb@comsec.com>
520
521         * src/lib/general/gr_kludge_copy.{h,cc,i}: new. Copies input to output.
522         * src/python/gnuradio/gr/qa_kludge_copy.py: new QA code.
523
524 2006-02-05  Eric Blossom  <eb@comsec.com>
525
526         * src/python/gnuradio/gr/qa_iir.py (test_iir.test_iir_direct_008):
527         accept either RuntimeError or ValueError in test case.  The return
528         value changed in swig 1.3.28.
529
530         * src/lib/swig/gnuradio.i: now use anonymous templates for
531         std::vector's.  This was a tip from one of the SWIG developers.
532         It generates less code.
533
534 2006-02-02  Eric Blossom  <eb@comsec.com>
535
536         * src/python/gnuradio/gruimpl/seq_with_cursor.py: added method to
537         select closest index by value.
538
539 2006-01-30  Eric Blossom  <eb@comsec.com>
540
541         * src/lib/general/gr_packet_sink.{h,i}: Added new "carrier_sensed"
542         method.  Naive implementation, but it just might work ;)
543         * src/python/gnuradio/blksimpl/gmsk2_pkt.py (carrier_sensed): new method.
544
545 2006-01-28  Eric Blossom  <eb@comsec.com>
546
547         * src/lib/general/gr_pa_2x2_phase_combiner.{h,cc,i}: new.  
548         four antenna phase combiner for phased array experiments.
549         
550         * src/lib/general/gr_simple_squelch_cc.{h,cc,i}: added threshold
551         and squelch_range methods.
552
553 2006-01-24  Eric Blossom  <eb@comsec.com>
554
555         * src/lib/general/gr_sync_block.cc (forecast): removed duplicated code.
556         * src/lib/general/gr_sync_interpolator.cc (forecast): removed duplicated code.
557         * src/lib/general/gr_sync_decimation.cc (forecast): removed duplicated code.
558         * src/lib/runtime/gr_single_threaded_scheduler.cc (main_loop):
559         take advantage of fixed_rate() method so that we can consume all
560         available input.  Fixed bad audio sound with encdec.
561
562 2005-12-23  Eric Blossom  <eb@comsec.com>
563
564         * src/lib/general/gr_interleaved_short_to_complex.i (class
565         gr_interleaved_short_to_complex): corrected superclass spec.
566
567 2005-12-19  Martin Dudok van Heel <nldudok1 at olifantasia.com>
568
569         Addded a new blocks to convert from unsigned char to float and for char to float.
570         Added new agc block gr_agc_ff based on existing gr_agc block
571         (which can't be directly used in a flowgraph).  All needed for
572         tv-reception.
573
574         * src/lib/general/gr_uchar_to_float.{cc,h,i}: new
575         * src/lib/general/gri_uchar_to_float.{cc,h}: new
576         * src/lib/general/gr_char_to_float.{cc,h,i}: new
577         * src/lib/general/gri_char_to_float.{cc,h}: new
578         * src/lib/general/gr_agc_ff.cc: new
579         * src/lib/general/gr_agc_ff.h: new
580         * src/lib/general/gr_agc_ff.i: new
581         * src/lib/general/Makefile.am: changed. Added gr_agc_ff,
582         gr_(u)char_to_float and gri_(u)char_to_float.
583         * src/lib/general/general.i: changed. Added
584         gr_agc_ff,gr_(u)char_to_float and gri_(u)char_to_float.
585
586 2005-12-17  Eric Blossom  <eb@comsec.com>
587
588         * src/lib/general/gr_quadrature_demod_cf.cc: use fast arctan code.
589
590 2005-12-17  Bob McGwier N4HY <rwmcgwier@comcast.net>
591
592         * src/lib/general/gr_lms_dfe_cc.{h,cc,i}: new.
593         * src/lib/general/gr_fast_atan2f.cc:  new.  Fast arc tangent using
594         table lookup and interpolation.  Declaration added to gr_math.h
595
596 2005-12-17  Eric Blossom  <eb@comsec.com>
597
598         * src/lib/general/gr_lms_dfe_ff.h: doc fix.
599         * src/lib/general/gr_lms_dfe_ff.cc: refactored.  Moved common
600         functions to gr_misc
601         * src/lib/general/gr_misc.{h,cc}: new.  Collect misc functions in
602         one place.
603         * doc/Makefile.am: --enable-doxygen default is now "no"
604
605 2005-12-16  Eric Blossom  <eb@comsec.com>
606
607         * src/lib/swig/gnuradio_swig_bug_workaround.h: removed from CVS.
608         It's generated when it's needed.
609
610 2005-12-09  Eric Blossom  <eb@comsec.com>
611
612         made 2.6 release.
613
614 2005-12-08  Chuck Swiger  <cswiger@widomaker.com>
615
616         * src/lib/general/gr_probe_signal_f.{h,cc,i}: new.  Return a
617         single sample from the stream.
618
619 2005-12-07  Chuck Swiger  <cswiger@widomaker.com>
620
621         * src/lib/general/gr_probe_avg_mag_sqrd_{f,c}.{h,cc,i}: new.
622         Sinks that measure the average magnitude squared and allow the
623         value to be retrieved via accessors.
624
625 2005-12-06  Eric Blossom  <eb@comsec.com>
626
627         * src/lib/general/gr_clock_recovery_mm_ff.cc: doc fix: added reference to book.
628
629 2005-12-01  Eric Blossom  <eb@comsec.com>
630
631         * src/lib/general/gr_packet_sink.h (class gr_packet_sink): changed
632         d_threshold to unsigned to eliminate warning.
633         * src/lib/general/gr_simple_correlator.cc: removed duplicate
634         definition of slice.
635
636 2005-12-01  Stephane Fillod  <f8cfe@free.fr>
637
638         * src/lib/general/gr_count_bits.cc (gr_count_bits32): faster
639         implementation.  No branching.
640
641 2005-11-22  Ramakrishnan Muthukrishnan <rkrishnan@symonds.net>
642
643         * src/python/gnuradio/gr/qa_filter_delay_fc.py,
644         src/python/gnuradio/gr/qa_hilbert.py: updated QA code to reflect
645         change in delay line handling.
646
647 2005-11-21  Eric Blossom  <eb@comsec.com>
648
649         * config/gr_boost.m4: reworked to look for latest version if
650         installed in version-specific subdir of /usr/local/include.
651         * src/lib/swig/Makefile.am (DISTCLEANFILES): added gnuradio_swig_python.d
652
653 2005-11-19  Eric Blossom  <eb@comsec.com>
654
655         * config/usrp_libusb.m4 (USRP_LIBUSB): add -lIOKit under darwin.
656         * config/gr_no_undefinedm4, config/gr_set_md_cpu.m4,
657         config/gr_x86_64.m3, config/usrp_fusb_tech.m4,
658         config/usrp_libusb.m4: changed incorrect use of
659         AC_CANONICAL_TARGET to HOST.
660
661 2005-11-18  Eric Blossom  <eb@comsec.com>
662
663         These changes enabled discontinous transmission of usrp packets.
664         The treatment of history was slightly changed.  Now we provide
665         zeros for the initial delay lines and produce N outputs for N
666         inputs.  In the past we would produce N-history-1 outputs for N inputs.
667         
668         * src/python/gnuradio/packet_utils.py: ensure at least a single
669         byte of padding to flush filters.
670         * src/lib/runtime/gr_block.{h,cc,i},
671         src/lib/general/gr_sync_block.{h,cc,i},
672         src/lib/general/gr_sync_decimator.{h,cc,i},
673         src/lib/general/gr_sync_interpolator.{h,cc,i}: moved history into
674         gr_block from gr_sync_block.  Added new methods to support fast
675         path through scheduler: fixed_rate, fixed_rate_ninput_to_output
676         and fixed_rate_noutput_to_input.
677         
678         * src/python/gnuradio/gr/flow_graph.py (flow_graph._connect_inputs):
679         account for initial history when attaching buffer reader.
680         * src/lib/runtime/gr_buffer.{h,cc,i} (gr_buffer_add_reader): modified to
681         provide zeros for initial history.
682
683         * src/python/gnuradio/gr/qa_fft_filter.py,
684         src/python/gnuradio/gr/qa_filter_delay_fc.py,
685         src/python/gnuradio/gr/qa_hilbert.py,
686         src/python/gnuradio/gr/qa_interp_fir_filter.py,
687         src/python/gnuradio/gr/qa_rational_resampler.py: tweaked QA code
688         to work with new history behavior.
689
690         
691 2005-11-17  Eric Blossom  <eb@comsec.com>
692
693         * src/lib/filter/gr_interp_fir_filter_XXX.cc.t,
694         gr_rational_resampler_base_XXX.cc.t: ensure that history is set in
695         constructor.
696
697         * src/lib/runtime/gr_msg_queue.i: more evil hackery to release
698         Python global interpreter lock around blocking msg_queue methods.
699
700         * src/python/gnuradio/packet_utils.py (make_packet): conditionally
701         add padding such that final packet is a multiple of 512 bytes on the USB.
702
703 2005-11-16  Eric Blossom  <eb@comsec.com>
704
705         * src/lib/io/gr_message_source.h (class gr_message_source): added
706         msgq limit to constructor args.
707
708         * src/lib/general/gr_packet_sink.{h,cc,i}: added access code
709         detection threshold to ctor args.
710
711         * src/lib/filter/gri_mmse_fir_interpolator.{h,cc}: declared interpolate const.
712
713         * src/lib/general/gr_clock_recovery_mm_ff.cc: limit excursions of
714         omega using omega_relative_limit.  Added conditional diagnostic logging.
715
716         * src/lib/runtime/gr_msg_queue.{h,cc}: block when inserting into a
717         full msg queue.
718
719         * src/lib/filter/gr_fractional_interpolator.cc (general_work):
720         1.0 - d_mu -> d_mu to match revised filter defs.
721
722 2005-11-15  Eric Blossom  <eb@comsec.com>
723
724         * src/lib/io/gr_oscope_guts.{h,cc},
725         src/lib/io/gr_oscope_sink_f.{h,cc,i}: Refactored to use messages
726         and message queues to communicate to Python.  This code will never
727         block waiting for the gui.
728         * src/lib/io/gr_message_sink.{h,cc,i}: new. A sink that packages up its
729         input and puts it in a message queue.
730
731 2005-11-14  Eric Blossom  <eb@comsec.com>
732
733         * doc/Doxyfile.in: updated to latest version.  Turned off serveral
734         options to reduce documentation generation time.
735
736 2005-11-13  Eric Blossom  <eb@comsec.com>
737
738         * src/python/gnuradio/blksimpl/gmsk2.py,
739         src/python/gnuradio/blksimpl/gmsk2_pkt.py: new GMSK mod/demod.
740         * src/python/gnuradio/gruimpl/mathmisc.py: new: gcd, lcm.
741         * src/python/gnuradio/blksimpl/rational_resampler.py: If neither
742         taps nor fractional_bw is supplied, provide a reasonable default.
743
744 2005-11-11  Eric Blossom  <eb@comsec.com>
745
746         * src/lib/filter/qa_gri_mmse_fir_interpolator.cc (t1): revised sign.
747
748         * src/lib/filter/gr_fir_filter_XXX.cc.t (work): if taps updated, return 0.
749         * src/lib/filter/gr_interp_fir_filter_XXX.cc.t (work): if taps updated, return 0.
750
751 2005-11-09  Matt Ettus  <matt@ettus.com>
752
753         * src/lib/general/gr_packet_sink.cc (gr_make_packet_sink): new.
754         slices, correlates for packet access code, checks header and
755         assembles packets.
756
757 2005-11-09  Eric Blossom  <eb@comsec.com>
758
759         * src/lib/io/gr_message_source.h: new class.  Messages sent to
760         this class are streamed to its single output.
761
762         * src/lib/runtime/gr_message.{h,cc,i}: removed unused methods; new
763         constructor from string; get contents as string.
764
765         * src/lib/filter/gri_mmse_fir_interpolator.{h,cc}: renamed from gr_mmse_fir_interpolator.
766         * src/lib/filter/gr_fractional_interpolator.{h,cc,i}: new.
767
768 2005-11-08  Eric Blossom  <eb@comsec.com>
769         
770         * src/lib/general/gr_crc32.{h,cc,i}: new.  ISO 3309 CRC-32 generator.
771
772 2005-11-08  Matt Ettus  <matt@ettus.com>
773
774         * src/lib/general/gr_threshold_ff.{h,cc,i}: new.
775         * src/python/gnuradio/blksimpl/standard_squelch.py: new
776         * src/python/gnuradio/blksimpl/nbfm_rx.py: removed squelch from
777         block.
778
779 2005-11-07  Eric Blossom  <eb@comsec.com>
780
781         * src/python/gnuradio/blksimpl/rational_resampler.py
782         (design_filter): added code to automatically design filter.
783
784         * src/lib/general/gr_firdes.cc (window): fixed Kaiser window.
785
786 2005-10-28  Eric Blossom  <eb@comsec.com>
787
788         * src/lib/io/gr_oscope_sink_f.cc (gr_oscope_sink_f): fixed del of
789         unowned variable that was causing double-free.
790
791 2005-10-23  Eric Blossom  <eb@comsec.com>
792
793         * src/lib/general/gr_nco.h (gr_nco): removed unused local var.
794
795 2005-10-17  Eric Blossom  <eb@comsec.com>
796
797         * src/lib/general/gr_fxpt_vco.h: use floats instead of double.
798         Gives 30% speedup on Opteron under gcc 3.3.5
799
800 2005-10-17  Stephane Fillod  <f8cfe@free.fr>
801
802         * src/lib/general/gr_fxpt_nco.h, src/lib/general/gr_nco.h,
803         src/lib/general/gr_sig_source_X.cc.t: set primitives in shape
804         for an eventual simd speedup. fix bug in sincos() of gr_nco.h.
805
806         * src/lib/general/Makefile.am, src/lib/general/gr_vco.h,
807         src/lib/general/gr_vco_f.cc, src/lib/general/gr_vco_f.h,
808         src/lib/general/qa_gr_fxpt_vco.h, src/lib/general/qa_gr_fxpt_vco.cc,
809         src/lib/general/qa_general.cc, src/tests/benchmark_vco.cc,
810         src/lib/general/gr_fxpt_vco.h: make use of fixed point cosine for VCO,
811         with appropriate QA code, set primitives in shape for an eventual 
812         simd speedup.
813         * src/lib/general/qa_gr_fxpt_vco.cc, src/lib/general/gr_vco.h,
814         src/lib/general/qa_gr_fxpt_vco.h, src/lib/general/gr_fxpt_vco.h: new
815
816         * README: reference gr-audio-jack, gr-audio-windows and gr-comedi
817
818 2005-10-12  Eric Blossom  <eb@comsec.com>
819
820         * src/lib/runtime/gr_vmcircbuf_mmap_tmpfile.{h,cc}: resurrected
821         rev 1.1 then added check for contiguous mapping.
822         * src/lib/runtime/gr_vmcircbuf.cc: enable gr_vmcircbuf_mmap_tmpfile.
823
824 2005-10-11  Eric Blossom  <eb@comsec.com>
825
826         * src/lib/runtime/gr_vmcircbuf_mmap_shm_open.cc
827         (gr_vmcircbuf_mmap_shm_open): corrected error message.
828
829 2005-10-10  Eric Blossom  <eb@comsec.com>
830
831         * src/lib/runtime/gr_vmcircbuf_mmap_tmpfile.{h,cc}: removed.
832
833 2005-10-10  Stephane Fillod  <f8cfe@free.fr>
834
835         * src/lib/general/gr_check_counting_s.cc,
836         src/lib/general/gr_check_lfsr_32k_s.cc,
837         src/lib/general/gr_vector_source_X.cc.t,
838         src/lib/runtime/gr_vmcircbuf_createfilemapping.cc,
839         src/lib/runtime/gr_vmcircbuf_mmap_shm_open.cc: compiler warning
840         silencing.
841
842         * src/lib/general/gr_sig_source_X.cc.t,
843         src/lib/general/gr_fxpt_nco.h,
844         src/lib/general/gr_nco.h: added sincos block primitive.
845         * src/lib/general/qa_gr_fxpt_nco.cc: qa code for new sincos
846         block primitive. cleanup.
847         * src/tests/benchmark_nco.cc: benchmark the new sincos block
848
849         * src/tests/Makefile.am: added benchmark_vco
850         src/tests/benchmark_vco.cc: new
851
852 2005-10-05  Eric Blossom  <eb@comsec.com>
853
854         * src/python/gnuradio/gr/hier_block.py (hier_block_base.__init__):
855         reenabled weakref to break circular graph.
856         * src/python/gnuradio/gr/basic_flow_graph.py (basic_flow_graph),
857         src/python/gnuradio/gr/flow_graph.py (flow_graph):
858         removed __slots__ class attribute so we can create weakrefs to
859         flow graphs.
860
861         * src/python/gnuradio/gr/gr_threading.py: New.  Load appropriate bug fix.
862         * src/python/gnuradio/gr/gr_threading_23.py (Thread.join): bug fixed
863         version of python 2.3 threading.py.
864         * src/python/gnuradio/gr/gr_threading_24.py (Thread.join): bug fixed
865         version of python 2.4 threading.py.
866
867         * src/lib/general/gr_vco_f.{h,cc,i}: new VCO block.
868
869 2005-10-03  Eric Blossom  <eb@comsec.com>
870
871         * src/python/gnuradio/gr/hier_block.py (hier_block_base.__init__):
872         backed out use of weakref.
873         * src/python/gnuradio/gr/scheduler.py (scheduler.wait): backed out
874         "Control-C fix".
875
876 2005-10-02  Eric Blossom  <eb@comsec.com>
877
878         * src/python/gnuradio/blksimpl/wfm_tx.py: New. Wide band FM tx block.
879
880 2005-09-29  Eric Blossom  <eb@comsec.com>
881
882         * src/python/gnuradio/gr/hier_block.py (hier_block_base.__init__):
883         store weakref to flow_graph to break circular graph so that flow
884         graph can be reclaimed right away.
885
886         * src/python/gnuradio/gr/flow_graph.py (flow_graph.__del__): call
887         self.stop() to ensure that i/o devices get shutdown gracefully.
888
889         * src/python/gnuradio/gr/scheduler.py (scheduler.wait): calling
890         thread.join was keeping us from seeing SIGINT.  Replaced with
891         alternate implementation.
892
893 2005-09-27  Eric Blossom  <eb@comsec.com>
894
895         * src/python/gnuradio/eng_option.py (check_subdev): removed the
896         (0, None) and (1, None) results.
897
898 2005-09-21  Eric Blossom  <eb@comsec.com>
899
900         * src/python/gnuradio/eng_option.py (check_subdev): added new
901         command line parser type, "subdev", for selecting usrp daughterboards.
902
903 2005-09-17  Krzysztof Kamieniecki <krys@kamieniecki.com>
904
905         * src/lib/filter/qa_gr_fir_ccf.cc: alignment fix for gcc 4.x
906
907 2005-08-28  Stephane Fillod  <f8cfe@free.fr>
908         
909         * config/gr_set_md_cpu.m4, src/lib/filter/Makefile.am: add simd 
910         support for x86_64 platform.
911
912         * src/lib/filter/ccomplex_dotprod_3dnow64.S,
913         src/lib/filter/ccomplex_dotprod_3dnowext64.S,
914         src/lib/filter/ccomplex_dotprod_sse64.S,
915         src/lib/filter/complex_dotprod_3dnow64.S,
916         src/lib/filter/complex_dotprod_3dnowext64.S,
917         src/lib/filter/complex_dotprod_sse64.S,
918         src/lib/filter/fcomplex_dotprod_3dnow64.S,
919         src/lib/filter/fcomplex_dotprod_sse64.S,
920         src/lib/filter/float_dotprod_3dnow64.S,
921         src/lib/filter/float_dotprod_sse64.S,
922         src/lib/filter/short_dotprod_mmx64.S,
923         src/lib/filter/cpuid_x86_64.S: new
924
925         * src/lib/filter/ccomplex_dotprod_3dnow.S,
926         src/lib/filter/ccomplex_dotprod_3dnowext.S,
927         src/lib/filter/ccomplex_dotprod_sse.S,
928         src/lib/filter/complex_dotprod_3dnow.S,
929         src/lib/filter/complex_dotprod_3dnowext.S,
930         src/lib/filter/complex_dotprod_sse.S,
931         src/lib/filter/fcomplex_dotprod_3dnow.S,
932         src/lib/filter/fcomplex_dotprod_sse.S,
933         src/lib/filter/float_dotprod_3dnow.S,
934         src/lib/filter/float_dotprod_sse.S,
935         src/lib/filter/short_dotprod_mmx.S
936         src/lib/filter/cpuid_x86.S: filename debug info fix, 
937         removed useless emms instruction in pure SSE.
938         * src/lib/filter/qa_gr_fir_ccc.cc: comment fix
939         
940 2005-08-28  Eric Blossom  <eb@comsec.com>
941
942         * src/lib/general/malloc16.c: fixed 64-bit pointer to int cast problem.
943
944 2005-08-26  Eric Blossom  <eb@comsec.com>
945
946         * src/python/gnuradio/gr/qa_rational_resampler.py
947         (test_rational_resampler.test_002_interp):  reduced random test
948         from 10k cases to 1000 cases.  The 10k case turns up a single
949         failure.  FIXME figure out why!
950
951         * src/python/gnuradio/gr/qa_fsk_stuff.py
952         (test_bytes_to_syms.test_simple_framer):  fixed test case to
953         reflect 0x55 trailing tail.
954
955         * src/lib/filter/qa_gr_fir_ccc.cc (test_random_io): Ensure 16-byte
956         input alignment to meet contract with SIMD ccc kernel.
957
958 2005-08-25  Eric Blossom  <eb@comsec.com>
959
960         * src/lib/general/gr_simple_correlator.cc: average the samples in
961         the sync field and use this to set the slicing level for the
962         payload.  This helps account for frequency offsets between the Tx
963         and Rx sides.
964
965 2005-08-24  Eric Blossom  <eb@comsec.com>
966
967         * src/lib/general/gr_simple_framer_sync.h: include GRSF_TAIL_PAD
968         in GRSF_OVERHEAD.
969
970         * src/lib/runtime/gr_single_threaded_scheduler.cc (main_loop): now
971         only invoke sources if we are not making progress.  This avoids
972         blocking (in most cases) unless we've got nothing better to do.
973
974         * src/lib/filter/gr_freq_xlating_fir_filter_XXX.cc.t
975         (build_composite_fir): reversed taps to fix problem introduced
976         when we "rationalized" the tap ordering a while ago.  [We are
977         missing a unit test for this...]
978
979 2005-08-22  Matt Ettus  <matt@ettus.com>
980
981         * src/python/gnuradio/blksimpl/gmsk.py:
982                 made several changes to the filters on both TX and RX.
983                 The demod filter (integrate_taps) should not average
984                 over multiple samples.  In reality, a few samples should 
985                 work, so I'm not sure why it doesn't here.
986
987 2005-08-22  Eric Blossom  <eb@comsec.com>
988
989         * src/lib/general/gr_simple_correlator.cc (general_work): removed
990         incorrect magic number and replaced with constant expression.
991         [Almost as embarrassing as a buffer overflow]
992
993 2005-08-21  Eric Blossom  <eb@comsec.com>
994
995         * src/lib/general/gr_simple_framer_sync.h: added one byte tail
996         padding to ensure that correlator has a chance to get synced in
997         case it was later on the previous packet.
998
999         * src/lib/general/gr_simple_correlator.cc (general_work):
1000         corrected to use count_bits64.
1001
1002 2005-08-19  Eric Blossom  <eb@comsec.com>
1003
1004         * doc/Makefile.am: clean-local now uses $(RM) -fr
1005
1006 2005-08-18  Eric Blossom  <eb@comsec.com>
1007
1008         * src/lib/general/gr_count_bits.{h,cc}: new gr_count_bits64.
1009         
1010         * src/lib/general/gr_simple_correlator.{h,cc},
1011         src/lib/general/gr_simple_framer.{h,cc},
1012         src/lib/general/gr_simple_framer_sync.h,
1013         src/python/gnuradio/gr/qa_fsk_stuff.py: changed length of SYNC
1014         code from 32 to 64 bits.
1015
1016 2005-08-16  Andrew Thomas Beck <Andrew.Beck@postgrads.unisa.edu.au>
1017
1018         * src/lib/runtime/gr_vmcircbuf_createfilemapping.cc (gr_vmcircbuf_createfilemapping): fixes.
1019
1020 2005-08-15  Eric Blossom  <eb@comsec.com>
1021
1022         * src/lib/runtime/gr_single_threaded_scheduler.i,
1023         src/lib/runtime/gr_block_detail.i, src/lib/runtime/gr_buffer.i:
1024         fixes for SWIG 1.3.25.  Thanks to Job de Haas for a big clue!
1025
1026 2005-08-08  Martin Dudok van Heel <nldudok1 at olifantasia.com>
1027
1028        Addded a new block to convert from float to unsigned char. Needed for new tv-reception example.
1029
1030        * src/lib/general/gr_float_to_uchar.{cc,h,i}: new
1031        * src/lib/general/gri_float_to_uchar.{cc,h}: new
1032        * src/lib/general/Makefile.am: changed. Added gr_float_to_uchar and gri_float_to_uchar. (Also added gr_float_to_char.h which was
1033          forgotten in previous patch to add gr_float_to_char)   
1034        * src/lib/general/general.i: changed. Added gr_float_to_uchar and gri_float_to_uchar.
1035
1036 2005-07-28  Eric Blossom  <eb@comsec.com>
1037
1038         * src/lib/general/qa_gr_circular_file.cc (t1): conditionalized
1039         base on HAVE_MMAP.
1040
1041 2005-07-24  Stephane Fillod  <f8cfe@free.fr>
1042
1043         * src/lib/runtime/gr_vmcircbuf_mmap_tmpfile.cc: get correct
1044         granularity under Cygwin.
1045
1046         * src/lib/filter/Makefile.am: renamed .s files to .S in order
1047         to enable preprocessor support in assembly source
1048         * src/lib/general/README: misc status update
1049         * src/lib/filter/assembly.h: new
1050         * src/lib/filter/3dnow_float_dotprod_really_simple.S,
1051         src/lib/filter/3dnow_float_dotprod_simple.S,
1052         src/lib/filter/ccomplex_dotprod_3dnow.S,
1053         src/lib/filter/ccomplex_dotprod_3dnowext.S,
1054         src/lib/filter/ccomplex_dotprod_sse.S,
1055         src/lib/filter/complex_dotprod_3dnow.S,
1056         src/lib/filter/complex_dotprod_3dnowext.S,
1057         src/lib/filter/complex_dotprod_sse.S,
1058         src/lib/filter/fcomplex_dotprod_3dnow.S,
1059         src/lib/filter/fcomplex_dotprod_sse.S,
1060         src/lib/filter/float_dotprod_3dnow.S,
1061         src/lib/filter/float_dotprod_sse.S,
1062         src/lib/filter/short_dotprod_mmx.S,
1063         src/lib/filter/cpuid_x86.S: new, moved from .s files with
1064         added preprocessor macros to handle both ELF and Windows
1065         x86 assembly.
1066         * src/lib/filter/3dnow_float_dotprod_really_simple.s,
1067         src/lib/filter/3dnow_float_dotprod_simple.s,
1068         src/lib/filter/ccomplex_dotprod_3dnow.s,
1069         src/lib/filter/ccomplex_dotprod_3dnowext.s,
1070         src/lib/filter/ccomplex_dotprod_sse.s,
1071         src/lib/filter/complex_dotprod_3dnow.s,
1072         src/lib/filter/complex_dotprod_3dnowext.s,
1073         src/lib/filter/complex_dotprod_sse.s,
1074         src/lib/filter/fcomplex_dotprod_3dnow.s,
1075         src/lib/filter/fcomplex_dotprod_sse.s,
1076         src/lib/filter/float_dotprod_3dnow.s,
1077         src/lib/filter/float_dotprod_sse.s,
1078         src/lib/filter/short_dotprod_mmx.s,
1079         src/lib/filter/cpuid_x86.s: removed (renamed)
1080
1081
1082 2005-07-21  Eric Blossom  <eb@comsec.com>
1083
1084         * src/lib/filter/gr_fft_filter_fff.cc (compute_sizes): turned off
1085         debugging output.
1086
1087 2005-07-20  Eric Blossom  <eb@comsec.com>
1088
1089         * src/python/gnuradio/blksimpl/filterbank.py: documented channel
1090         number to frequency mapping.  Fixed a couple of problems related
1091         to reversing filter tap order.
1092
1093 2005-07-20  Martin Dvh <gnuradiomail@olifantasia.com>
1094
1095         * src/lib/runtime/gr_vmcircbuf_createfilemapping.{h,cc}: new.
1096         Native implementation for Windows NT/W2K/XP.
1097         * config/gr_python.m4: MinGW mods.
1098
1099 2005-07-19  Eric Blossom  <eb@comsec.com>
1100
1101         * src/lib/filter/gr_fft_filter_fff.{h,cc,i}: new.  Work in
1102         progress.  Not yet ready for prime time.
1103
1104         * src/lib/runtime/gr_single_threaded_scheduler.cc: fixed spinning when
1105         sink's upstream was done, but there was a non-zero but too small
1106         amount of data left in the sink's input buffer.
1107
1108 2005-07-18  Stephane Fillod  <f8cfe@free.fr>
1109
1110         * config/gr_libgnuradio_core_extra_ldflags.m4,
1111         config/gr_no_undefined.m4, config/gr_python.m4: mods for MinGW.
1112
1113 2005-07-17  Eric Blossom  <eb@comsec.com>
1114
1115         * src/lib/filter/gr_rational_resampler_base_XXX.{h,cc,i}: new.
1116
1117         * src/python/gnuradio/blksimpl/rational_resampler.py
1118         (rational_resampler_ccc.__init__): new.  High-level wrapper for
1119         gr.rational_resampler_base_???
1120         
1121 2005-07-15  Eric Blossom  <eb@comsec.com>
1122
1123         * src/lib/filter/gr_fft_filter_ccc.cc,  src/lib/filter/gr_fir_XXX.h.t,
1124         src/lib/filter/gr_fir_ccc_simd.cc, src/lib/filter/gr_fir_ccc_simd.h,
1125         src/lib/filter/gr_fir_ccf_simd.cc, src/lib/filter/gr_fir_ccf_simd.h,
1126         src/lib/filter/gr_fir_fcc_simd.cc, src/lib/filter/gr_fir_fcc_simd.h,
1127         src/lib/filter/gr_fir_fff_simd.cc, src/lib/filter/gr_fir_fsf_simd.cc,
1128         src/lib/filter/gr_fir_scc_simd.cc, src/lib/filter/gr_fir_scc_simd.h,
1129         src/lib/filter/gr_hilbert_fc.cc, src/lib/filter/gr_interp_fir_filter_XXX.cc.t,
1130         src/lib/filter/gr_mmse_fir_interpolator.cc, src/lib/filter/qa_ccomplex_dotprod_x86.cc,
1131         src/lib/filter/qa_gr_fir_ccc.cc, src/lib/filter/qa_gr_fir_ccf.cc,
1132         src/lib/filter/qa_gr_fir_fcc.cc, src/lib/filter/qa_gr_fir_fff.cc,
1133         src/lib/filter/qa_gr_fir_scc.cc, src/lib/general/Makefile.am,
1134         src/lib/general/gr_firdes.cc, src/lib/general/gr_firdes.h,
1135         src/lib/general/gr_firdes.i, src/python/gnuradio/gr/qa_filter_delay_fc.py,
1136         src/python/gnuradio/gr/qa_interp_fir_filter.py: reversed order of
1137         "taps" arguments constructors and set_taps, fixed taps() so it
1138         returns the right order.  We now require the "right" order for
1139         taps, instead of the reversed order ("dot product order") we used to
1140         require.
1141
1142 2005-07-13  Martin Dvh <gnuradiomail@olifantasia.com>
1143
1144         * config/gr_check_createfilemapping.m4,
1145           config/gr_libgnuradio_core_extra_ldflags.m4: new files
1146         * configure.ac, config/Makefile.am, src/lib/Makefile.am: added
1147           support for extra ld flags and future createfilemapping
1148           factory.
1149         * src/lib/io/gr_file_source.cc, src/lib/io/gr_file_sink.cc:
1150           binary mode support under Windows.
1151
1152 2005-07-02  Eric Blossom  <eb@comsec.com>
1153
1154         * config/gr_no_undefined.m4, config/gr_x86_64.m4: new, x86_64 support.
1155         * config/gr_python.m4: backed out search for libpython, making
1156         x86_64 work and breaking Cygwin/MinGW.
1157         * configure.ac, src/lib/Makefile.am: mods for x86_64, $(NO_UNDEFINED)
1158
1159         * src/python/gnuradio/gr/qa_complex_to_xxx.py: loosened up passing
1160         threshold so that we pass on x86_64.
1161
1162 2005-06-23  Eric Blossom  <eb@comsec.com>
1163
1164         * src/lib/runtime/gr_error_handler.cc: added #include <unistd.h>
1165
1166 2005-06-19  Eric Blossom  <eb@comsec.com>
1167
1168         * src/lib/runtime/gr_single_threaded_scheduler.cc (main_loop):
1169         added diagnostic logging.  Fixed problem where data was dribbling
1170         through pipeline.
1171
1172         * src/lib/general/gr_fxpt.cc: gcc 4.x fix.
1173
1174 2005-06-16  Eric Blossom  <eb@comsec.com>
1175         
1176         * src/lib/general/gr_nco.h: increase precision: float->double.
1177         * src/lib/general/qa_gr_fxpt_nco.h: changed initial test frequency
1178         
1179 2005-06-16  Stephane Fillod  <f8cfe@free.fr>
1180
1181         * gnuradio-core.pc.in, src/lib/Makefile.am, src/lib/atsc/Makefile.am,
1182         src/lib/filter/Makefile.am, src/lib/general/Makefile.am,
1183         src/lib/runtime/Makefile.am, src/tests/Makefile.am: put qa code
1184         in separate library.
1185         
1186 2005-06-12  Eric Blossom  <eb@comsec.com>
1187
1188         * src/python/gnuradio/blksimpl/filterbank.py: new. DFT filterbank.
1189         * src/lib/general/gr_vector_to_streams.{h,cc,i}: new.
1190         * src/lib/general/gr_streams_to_vector.{h,cc,i}: new.
1191         * src/lib/general/gr_streams_to_stream.{h,cc,i}: new. Convert
1192         streams of 1 item into a stream of N items.
1193         * src/lib/general/gr_stream_to_streams.{h,cc,i}: new. Convert 
1194         a stream of N items into N streams of 1 items.
1195
1196 2005-06-11  Eric Blossom  <eb@comsec.com>
1197
1198         * src/lib/general/gr_nlog10_ff.{h,cc,i}: added addition constructor arg,
1199         k, that is added to the return value.  Handy for normalizing FFTs.
1200
1201         * src/lib/filter/gr_fft_filter_ccc.{h,cc,i}: new.  FFT based FIR filtering.
1202
1203 2005-06-10  Eric Blossom  <eb@comsec.com>
1204
1205         * src/python/gnuradio/gr/flow_graph.py (buffer_sizes.allocate),
1206         src/python/gnuradio/gr/basic_flow_graph.py (downstream_verticies_port):
1207         modified to take into account downstream block decimation ratio.
1208         This allows us to compute big FFTs, FIRs with lots of taps, etc.
1209
1210 2005-05-18  Eric Blossom  <eb@comsec.com>
1211
1212         * src/lib/runtime/gr_block.{h,cc,i}: new start/stop methods.  These are
1213         useful for minimizing latency due to startup overhead.
1214         * src/lib/runtime/gr_single_threaded_scheduler.cc: call new methods.
1215
1216 2005-05-18  John Gilmore  <gnu@toad.com>
1217
1218         * src/python/gnuradio/gruimpl/hexint.py: new.  Convert hex
1219         constants to negative ints for long ints >= 2**31.
1220
1221 2005-05-11  Eric Blossom  <eb@comsec.com>
1222
1223         * src/lib/runtime/gr_vmcircbuf_sysv_shm.cc
1224         (gr_vmcircbuf_sysv_shm): add read-only guard page on either side
1225         of buffer.
1226
1227         * src/lib/general/gr_throttle.{h,cc,i}: new block to rate-limit
1228         samples.  Mostly useful where there's nothing stopping us from
1229         sucking down all CPU.  E.g., reading from files, gr.sig_source, etc.
1230
1231 2005-05-09  Stephane Fillod  <f8cfe@free.fr>
1232         
1233         * src/lib/filter/fcomplex_dotprod_{3dnow,sse}.s,
1234         src/lib/filter/fcomplex_dotprod_x86.h,
1235         src/lib/filter/gr_fir_ccf_simd.{cc,h},
1236         src/lib/filter/gr_fir_ccf_x86.{cc,h},
1237         src/lib/filter/gr_fir_fcc_simd.{cc,h},
1238         src/lib/filter/gr_fir_fcc_x86.{cc,h},
1239         src/tests/benchmark_dotprod_ccf.cc,
1240         src/tests/benchmark_dotprod_fsf.cc: new files
1241         * src/lib/filter/Makefile.am, src/tests/Makefile.am,
1242         src/lib/filter/gr_fir_sysconfig_x86.{cc,h}: support for FCC and
1243         CCF filter speedup
1244         * src/tests/benchmark_dotprod_{ccc,fcc,scc}.cc: copy/paste fixes
1245         which should not change benchmark results
1246
1247 2005-05-09  Stephane Fillod  <f8cfe@free.fr>
1248
1249         * config/gr_sysv_shm.m4: SysV shared memory not mandatory
1250         * config/gr_pwin32.m4, config/gr_python.m4, config/lf_cxx.m4:
1251         fixes for Cygwin, MinGW
1252         * src/lib/runtime/gr_error_handler.cc, src/lib/runtime/gr_local_sighandler.{h,cc},
1253         src/lib/runtime/gr_vmcircbuf.cc, src/lib/runtime/gr_vmcircbuf_mmap_tmpfile.cc: 
1254         modifications for Cygin, MinGW
1255
1256 2005-04-27  Eric Blossom  <eb@comsec.com>
1257
1258         * src/lib/general/gr_fake_channel_coder_pp.{h,cc,i}: new classes
1259         the pretend to do channel encoding and decoding, but really only
1260         add and strip padding...
1261
1262         * src/lib/runtime/gr_buffer.cc (allocate_buffer): cleaned up formatting
1263         on allocation warning message.
1264         
1265         * src/python/gnuradio/blksimpl/digital_voice.py: GSM vocoder + GMSK.
1266
1267 2005-04-03  Eric Blossom  <eb@comsec.com>
1268
1269         * src/lib/io/gr_oscope_guts.cc (found_trigger): fixed trigger
1270         problem where value was exactly equal to trigger value.
1271
1272 2005-03-29  Eric Blossom  <eb@comsec.com>
1273
1274         * src/python/gnuradio/blksimpl/gmsk.py: new GMSK mod and demod
1275         from Joshua Lackey <jl@noether.uoregon.edu>
1276
1277 2005-03-29  Ramakrishnan Muthukrishnan <rkrishnan@symonds.net>
1278
1279         * src/lib/filter/gr_filter_delay_fc.{h,cc,i},
1280         src/python/gnuradio/gr/qa_filter_delay_fc.py:  New block that
1281         pairs a filter with a delay.
1282
1283 2005-03-26  Eric Blossom  <eb@comsec.com>
1284
1285         * src/lib/runtime/gr_dispatcher.{h,cc,i},
1286         src/lib/runtime/gr_select_handler.{h,cc,i}: new.  Framework for
1287         callbacks based on select(2).
1288         
1289         * src/lib/runtime/gr_error_handler.{h,cc,i}: new.
1290
1291 2005-03-14  Eric Blossom  <eb@comsec.com>
1292
1293         * src/lib/general/gr_complex_to_xxx.{h,cc,i}: now support
1294         vector length argument, vlen.
1295         * src/lib/general/gr_nlog10_ff.{h,cc,i}: new.
1296         * src/lib/general/gr_parallel_to_serial.{h,cc,i}: new.
1297         * src/lib/filter/gr_single_pole_iir_filter_ff.{h,cc,i}: new
1298         * src/python/gnuradio/gr/qa_single_pole_iir.py: new
1299         * src/python/gnuradio/gr/qa_nlog10.py: new
1300
1301 2005-03-08  Eric Blossom  <eb@comsec.com>
1302
1303         * src/python/gnuradio/gr/qa_fsk_stuff.py: enabled simple_framer qa code.
1304         * src/lib/general/gr_simple_framer.{h,cc}: added forecast method.
1305
1306 2005-03-07  Eric Blossom  <eb@comsec.com>
1307
1308         * configure.ac: test for trunc and work around if missing.
1309
1310 2005-03-02  Eric Blossom  <eb@comsec.com>
1311
1312         * src/python/gnuradio/blks/__init__.py, src/python/gnuradio/blksimpl/__init__.py,
1313         src/python/gnuradio/gru/__init__.py,
1314         src/python/gnuradio/gruimpl/__init__.py: refactored organization
1315         so that hierarchical blocks are physically contained in the
1316         blkimpl directory, but that for convenience in naming, all blocks
1317         appear in the gnuradio.blks package.  Same story for gruimpl vs gru.
1318
1319         Rearranged a bunch of stuff under src/python.  CVS sucks!
1320
1321 2005-02-28  Eric Blossom  <eb@comsec.com>
1322
1323         * src/lib/general/gr_frequency_modulator_fc.cc (work): fixed
1324         floating point loss of precision.
1325         * src/lib/general/gr_simple_correlator.cc (general_work): fixed
1326         bug that had it processing only a single sample at a time.
1327
1328 2005-02-25  Matt Ettus  <matt@ettus.com>
1329
1330         * lib/general/Makefile.am, lib/general/general.i, 
1331         lib/general/gr_rms_[ff,cf].[cc,h,i]: new rms measuring block
1332
1333 2005-02-25  Eric Blossom  <eb@comsec.com>
1334
1335         * python/gnuradio/gr/qa_mute.py, lib/general/gr_mute_XX.cc.t,
1336         lib/general/gr_mute_XX.h.t, lib/general/gr_mute_XX.i.t: new block.
1337         * lib/general/Makefile.am, lib/general/Makefile.gen, 
1338         lib/general/general_generated.i, lib/general/generate_common.py:
1339         mods to generate new block.
1340
1341 2005-02-23  Eric Blossom  <eb@comsec.com>
1342
1343         * src/python/gnuradio/gr/hier_block.py: new. support for
1344         hierarchical signal processing blocks.
1345         * src/python/gnuradio/gr/basic_flow_graph.py,
1346         src/python/gnuradio/gr/qa_basic_flow_graph.py: modified to support
1347         hierarchical signal processing blocks.
1348
1349 2005-02-22  Eric Blossom  <eb@comsec.com>
1350
1351         * src/lib/general/gr_simple_squelch_cc.{h,cc,i}: new.
1352
1353         * src/lib/runtime/gr_message.{h,cc,i},
1354         src/lib/runtime/gr_msg_handler.{h,cc,i}, 
1355         src/lib/runtime/gr_msg_queue.{h,cc,i}, 
1356         src/lib/runtime/gr_timer.h: new. work-in-progress.
1357
1358 2005-02-09  Eric Blossom  <eb@comsec.com>
1359
1360         * src/lib/io/gr_file_descriptor_source.{h,cc}(work): reworked to
1361         return as soon as any data is available.  This make it much more
1362         friendly for reading sockets, named pipes, etc.
1363
1364 2005-02-07  Eric Blossom  <eb@comsec.com>
1365
1366         * src/python/gnuradio/gr/basic_flow_graph.py (coerce_endpoint):
1367         fix exception message.
1368
1369 2005-02-06  Eric Blossom  <eb@comsec.com>
1370
1371         * src/python/gnuradio/gr/basic_flow_graph.py
1372         (basic_flow_graph.connect): connect now takes >= 2 args, per
1373         Thomas Traber's suggestion.
1374         * src/python/gnuradio/gr/qa_flow_graph.py,
1375         src/python/gnuradio/gr/qa_basic_flow_grapy.py:  additional test code.
1376
1377 2005-02-05  Eric Blossom  <eb@comsec.com>
1378
1379         * src/python/gnuradio/gr/basic_flow_graph.py
1380         (basic_flow_graph.connect): removed unnecessary None
1381
1382 2005-02-02  Chuck Swiger <cswiger@widomaker.com>
1383
1384         * src/lib/io/gr_file_source.{h,cc,i}: added seek method.
1385
1386 2005-01-29  Eric Blossom  <eb@comsec.com>
1387
1388         * src/lib/runtime/gr_io_signature.i: mods for SWIG 1.3.24
1389
1390 2005-01-24  Eric Blossom  <eb@comsec.com>
1391
1392         * src/python/gnuradio/freqz.py (freqz): New. Compute frequency
1393         response of filter.
1394         * src/python/gnuradio/gnuplot_freqz.py: New. Plot output of freqz.
1395
1396 2005-01-17  Eric Blossom  <eb@comsec.com>
1397
1398         * src/lib/runtime/gr_single_threaded_scheduler.cc (main_loop):
1399         Make better initial estimate of noutput_items when current block
1400         is a decimator.  Removed old diagnostic code.
1401
1402         * src/lib/general/gr_vector_source_X.cc.t (work): reorganized the
1403         repeat case so that we always return the number of items requested.
1404         This fixes the excessive latency we were seeing in
1405         spectrum_inversion.py
1406
1407         * src/python/gnuradio/gr/flow_graph.py: Set noutputs correctly.
1408         * src/python/gnuradio/gr/qa_flow_graph.py: Test value of noutputs.
1409         
1410 2005-01-16  Eric Blossom  <eb@comsec.com>
1411
1412         * src/lib/runtime/gr_single_threaded_scheduler.cc (main_loop):
1413         check for situation where block is requesting more input data than
1414         we will ever provide.
1415
1416         * src/python/gnuradio/gr/flow_graph.py (buffer_sizes.allocate):
1417         set minimum buffersize to 2 * output_multiple()
1418
1419         * src/lib/runtime/gr_buffer.cc (space_available): fixed degenerate
1420         case to be consistent with normal case.
1421
1422 2005-01-01  Eric Blossom  <eb@comsec.com>
1423
1424         * src/lib/io/sdr_1000.i (class sdr_1000_base): removed default arg
1425         to work around SWIG 1.3.23 bug.
1426
1427 2004-12-22  Eric Blossom  <eb@comsec.com>
1428
1429         * src/lib/general/qa_gr_fxpt.cc (t0): disabled float_to_fixed test
1430         to avoid spurious failures.
1431
1432 2004-12-21  Eric Blossom  <eb@comsec.com>
1433
1434         * src/lib/general/gr_fxpt.h (class gr_fxpt): added explicit float cast.
1435         * src/lib/general/Makefile.am (grinclude_HEADERS): added gr_fxpt_nco.h
1436
1437 2004-12-18  Eric Blossom  <eb@comsec.com>
1438
1439         * src/lib/general/gr_fxpt.{h,cc},src/lib/general/gr_fxpt_nco.{h,cc},
1440         src/lib/general/qa_gr_fxpt.{h,cc},src/lib/general/qa_gr_fxpt_nco.{h,cc},
1441         src/tests/benchmark_nco.cc: new.  Faster sine and cosine
1442         calculation.  Uses table lookup with linear interpolation.  This
1443         is about 3x faster than the original code.
1444
1445 2004-12-17  Eric Blossom  <eb@comsec.com>
1446
1447         * src/lib/general/Makefile.am (swiginclude_HEADERS): fixed typo.
1448         * src/lib/general/gr_deinterleave.{h,cc,i}: new.
1449
1450 2004-12-11  Eric Blossom  <eb@comsec.com>
1451
1452         * src/lib/general/gr_interleave.{h,cc,i}: new.
1453
1454 2004-12-10  Eric Blossom  <eb@comsec.com>
1455
1456         * src/python/gnuradio/eng_option.py (check_intx): now parses hex
1457         numbers too.
1458
1459 2004-12-09  Eric Blossom  <eb@comsec.com>
1460
1461         * src/lib/filter/Makefile.am: fixed problem with gr_hilbert_fc on
1462         OS/X (it was in the wrong place in the makefile).  Now builds and
1463         checks on OS/X.
1464
1465 2004-12-06  Ramakrishnan Muthukrishnan <rkrishnan@symonds.net>
1466
1467         * src/lib/filter/Makefile.am, src/lib/general/Makefile.am,
1468         src/python/gnuradio/Makefile.am,
1469         src/python/gnuradio/gr/Makefile.am: added *.pyc to CLEANFILES
1470
1471 2004-11-30  Eric Blossom  <eb@comsec.com>
1472
1473         * src/python/gnuradio/gr/Makefile.am, configure.ac: modified to 
1474         no longer require run_test_trampoline.  Now uses AC_CONFIG_COMMANDS to
1475         set execute bit on run_tests.
1476         * src/python/gnuradio/gr/run_test_trampoline: removed.
1477
1478         * src/lib/filter/Makefile.am (swiginclude_HEADERS): fix typo in gr_hilbert_fc.i
1479
1480 2004-11-27  Eric Blossom  <eb@comsec.com>
1481
1482         * src/python/gnuradio/gr/qa_hilbert.py: new
1483         * src/lib/general/gr_firdes.i: moved from filter to general.
1484         * src/lib/general/gr_firdes.{h,cc}: new method: reverse.
1485         * src/lib/filter/gr_hilbert_fc.i: new.
1486         * src/lib/filter/gr_hilbert_fc.cc: ensure ntaps is odd.
1487
1488 2004-11-08  Stephane Fillod <f8cfe@free.fr>
1489         
1490         * src/lib/filter/Makefile.am, src/tests/Makefile.am,
1491         src/lib/filter/complex_dotprod_generic.cc,
1492         src/lib/filter/gr_fir_sysconfig_x86.{cc,h},
1493         src/lib/filter/qa_dotprod_x86.cc, src/lib/filter/qa_filter.cc:
1494         added support for x86 SIMD CCC dotproduct.
1495         * src/lib/filter/ccomplex_dotprod_3dnow.s,
1496         src/lib/filter/ccomplex_dotprod_3dnowext.s,
1497         src/lib/filter/ccomplex_dotprod_generic.{cc,h},
1498         src/lib/filter/ccomplex_dotprod_sse.s,
1499         src/lib/filter/ccomplex_dotprod_x86.h,
1500         src/lib/filter/gr_fir_ccc_simd.{cc,h},
1501         src/lib/filter/gr_fir_ccc_x86.{cc,h},
1502         src/lib/filter/qa_ccomplex_dotprod_x86.{cc,h},
1503         src/lib/filter/qa_gr_fir_ccc.{cc,h},
1504         src/tests/benchmark_dotprod.cc,
1505         src/tests/benchmark_dotprod_{ccc,fcc,scc}.cc: new
1506
1507 2004-11-08  Eric Blossom  <eb@comsec.com>
1508
1509         * src/lib/runtime/gr_block.h: new methods: set_input_signature and
1510         set_output_signature.
1511
1512 2004-11-04  Eric Blossom  <eb@comsec.com>
1513
1514         * configure.ac: upped version to 2.3cvs
1515         
1516         * configure.ac: set version to 2.3.  Made release.
1517         * src/python/gnuradio/audio.py (__init__): raise error if no audio
1518         module found.
1519
1520 2004-11-02  Eric Blossom  <eb@comsec.com>
1521
1522         * src/lib/runtime/gr_local_sighandler.cc (name): conditionalized
1523         based on signal names.
1524
1525 2004-10-30  Eric Blossom  <eb@comsec.com>
1526
1527         * src/lib/runtime/gr_local_sighandler.{h,cc}: new.  get and set
1528         signal handlers.
1529         * src/lib/runtime/gr_vmcircbuf.cc (test_factory): install handlers
1530         for SIGBUS and SIGSEGV while running tests.
1531
1532 2004-10-18  Stephane Fillod <f8cfe@free.fr>
1533         
1534         * config/gr_pwin32.m4, src/lib/runtime/gr_preferences.cc: proper
1535         detect Sleep() support, check for mkdir that takes only one arg
1536         under win32.
1537         * src/lib/runtime/gr_io_signature.cc,
1538         src/lib/runtime/gr_io_signature.h,
1539         src/lib/runtime/gr_io_signature.i,
1540         src/lib/runtime/qa_gr_io_signature.cc: resolve a clash with
1541         INFINITE already defined.
1542         * src/lib/runtime/gr_pagesize.cc: declare missing prototype of
1543         getpagesize() under win32.
1544
1545 2004-10-18  Eric Blossom  <eb@comsec.com>
1546
1547         * src/python/gnuradio/gr/run_tests.in: allow VPATH building.
1548
1549 2004-10-18  Stephane Fillod <f8cfe@free.fr>
1550
1551         * configure.ac, src/lib/filter/Makefile.am,
1552         src/lib/general/Makefile.am: allow VPATH building.
1553
1554 2004-10-17  Eric Blossom  <eb@comsec.com>
1555
1556         * doc/Makefile.am (install-data-local): install html documentation.
1557         * src/lib/filter/gr_iir_filter_ffd.cc (gr_iir_filter_ffd): removed
1558         debug message.
1559         * src/python/gnuradio/gr/run_tests.in: changed == to = for POSIX
1560         compatibility.
1561         * src/python/gnuradio/gr/qa_basic_flow_graph.py: use /usr/bin/env
1562         to find python.
1563
1564 2004-10-13  Eric Blossom  <eb@comsec.com>
1565
1566         * configure.ac: upped rev to 2.2cvs
1567
1568 2004-10-11  Eric Blossom  <eb@comsec.com>
1569
1570         * configure.ac: bumped rev to 2.2, make release
1571         * Makefile.am (EXTRA_DIST): added config.h.in
1572
1573 2004-10-07  Eric Blossom  <eb@comsec.com>
1574
1575         * src/python/gnuradio/lmx2306.py: now works!
1576
1577 2004-09-29  Eric Blossom  <eb@comsec.com>
1578
1579         * src/lib/filter/gri_iir.h: renamed from gr_iir.h.  Also, changed
1580         the sign back.  We're consistent with Oppenheim and Schafer,
1581         "Discrete-Time Signal Processing."  Documented exactly what we
1582         compute.  Faster delay line implementation.
1583         * src/lib/filter/gr_iir_filter_ffd.{h,cc,i}: new direct form IIR block.
1584         
1585 2004-09-23  Eric Blossom  <eb@comsec.com>
1586
1587         * config/usrp_fusb_tech.m4, config/bnv_have_qt.m4, config/cppunit.m4,
1588         config/gr_check_mc4020.m4, config/gr_check_usrp.m4, config/gr_doxygen.m4,
1589         config/gr_gprof.m4, config/gr_scripting.m4, config/gr_set_md_cpu.m4,
1590         config/pkg.m4, config/usrp_fusb_tech.m4: added additional quoting
1591         to first arg of AC_DEFUN to silence automake warning.
1592
1593 2004-09-22  Eric Blossom  <eb@comsec.com>
1594
1595         * src/lib/io/gr_file_descriptor_sink.cc: added missing #include <errno.h>
1596         * src/lib/io/gr_file_descriptor_source.cc: added missing #include <errno.h>
1597
1598 2004-09-21  Matthew Hall  <mahall@ncsa.uiuc.edu>
1599                                                                               
1600         * src/gnu/lib/gr/gr_iir.h: rewrote ctor docs. Fixed sign error
1601         in filter method. Now gr_iir uses Direct Form I of IIR.
1602         
1603 2004-09-19  Eric Blossom  <eb@comsec.com>
1604
1605         * src/lib/general/gr_complex_to_xxx.{h,cc,i}: new blocks.
1606         * src/python/gnuradio/gr/qa_complex_xxx.py: new qa code.
1607         
1608         * src/lib/general/gr_simple_correlator.{h,cc,i}: payload size is
1609         now in bytes, not bits.
1610         * src/lib/general/gr_simple_framer.{h,cc,i}: payload size is
1611         now in bytes, not bits.
1612
1613         * src/lib/swig/Makefile.am: now tracks swig .i file dependencies.
1614         * src/lib/swig/gnuradio.i: simplification and cleanup.
1615
1616 2004-09-18  Eric Blossom  <eb@comsec.com>
1617
1618         These modifications happened sometime between 2004-09-08 and 2004-09-18.
1619         The details are lost in the swirl around preparing the TAPR DCC.
1620
1621         * src/lib/filter/gr_interp_fir_filter_XXX.{h,cc,i}.t: new
1622         * src/lib/filter/generate_gr_interp_fir_filter_XXX.py: new
1623         * src/lib/filter/generate_all.py: modified for to generate interpolating fir filter
1624         * src/lib/general/gr_bytes_to_syms.{h,cc,i}: new
1625         * src/lib/general/gr_frequency_modulator_fc.{h,cc,i}: new
1626         * src/lib/general/gr_simple_framer.{h,cc,i}: new
1627         * src/lib/general/gr_simple_framer_sync.h: new
1628         * src/lib/general/gr_simple_correlator.{h,cc,i}: new
1629         * src/lib/io/gr_oscope_guts.{h,cc}: new
1630         * src/lib/io/gr_oscope_sink_{f,x}.{h,cc}: new
1631         * src/lib/io/gr_trigger_mode.h: new
1632         * src/lib/io/ppio.i: new
1633
1634         The following changes are related to moving from SWIG 1.3.21 to 1.3.22
1635         
1636         * src/lib/runtime/gr_block_detail.i: removed unneccesary global decl of friend.
1637         * src/lib/runtime/gr_buffer.i: removed unneccesary global decl of friend.
1638         * src/lib/runtime/gr_io_signature.i: removed unneccesary global decl of friend.
1639         * src/lib/runtime/gr_single_threaded_scheduler.i: removed unneccesary global decl of friend.
1640         * src/lib/swig/gnuradio.i: mods for improved STL support
1641         
1642         * src/lib/runtime/gr_types.h: new typedefs
1643         * src/lib/swig/gen-swig-bug-fix: new.  generate gnuradio_swig_bug_workaround.h
1644
1645         * src/python/gnuradio/eng_notation.py: new
1646         * src/python/gnuradio/grutil.py: new
1647         * src/python/gnuradio/gr_unittest.py: new subclass of unittest
1648         * src/python/gnuradio/lmx2306.py: new.  Control National PLL synthesizer
1649         * src/python/gnuradio/microtune.py: new.  Command line interface
1650         to microtune boards.
1651         * src/python/gnuradio/gr/qa_frequency_modulator.py: new
1652         * src/python/gnuradio/gr/qa_fsk_stuff.py: new
1653         * src/python/gnuradio/gr/qa_head.py: new
1654         * src/python/gnuradio/gr/qa_interp_fir_filter.py: new
1655         * src/python/gnuradio/gr/qa_sig_source.py: new
1656         
1657 2004-09-08  Eric Blossom  <eb@comsec.com>
1658
1659         * src/python/gnuradio/gr/basic_flow_graph.py
1660         (basic_flow_graph.validate): now calls check_topology.
1661         * src/lib/runtime/gr_block.{h,cc,i} (check_topology): new method.
1662         
1663         * src/lib/general/gr_short_to_float.{h,cc,i}: new
1664         * src/lib/general/gr_float_to_short.{h,cc,i}: new
1665
1666 2004-08-26  Eric Blossom  <eb@comsec.com>
1667
1668         * src/lib/general/gr_fft_vfc.{h,cc,i}: new
1669         * src/lib/general/gr_fft_vcc.{h,cc,i}: new
1670         * src/lib/general/gri_fft.{h,cc}: renamed from gr_fft.{h,cc}
1671         * src/lib/general/gr_serial_to_parallel.{h,cc,i}: new
1672         * src/lib/general/gr_keep_one_in_n.{h,cc,i}: new
1673
1674 2004-08-25  Eric Blossom  <eb@comsec.com>
1675
1676         * src/lib/io/gr_file_descriptor_source.{h,cc,i}: new
1677         * src/lib/io/gr_file_descriptor_sink.{h,cc,i}: new
1678
1679 2004-08-19  Eric Blossom  <eb@comsec.com>
1680
1681         * src/lib/general/gr_sig_source_X.cc.t (work): performance tweak
1682         for constant case.
1683
1684         * src/python/gnuradio/eng_option.py (check_eng_float): support
1685         engineering notation in option parsing.  E.g., 32k, 106.5M
1686
1687 2004-08-18  Eric Blossom  <eb@comsec.com>
1688
1689         * src/python/gnuradio/gr/scheduler.py,
1690         src/python/gnuradio/gr/basic_flow_graph.py,
1691         src/python/gnuradio/gr/flow_graph.py,
1692         src/python/gnuradio/gr/qa_flowgraph.py: modified to partition
1693         graphs and assign separate threads to each disjoint set of
1694         verticies.
1695         
1696
1697 2004-08-05  Eric Blossom  <eb@comsec.com>
1698
1699         * src/lib/general/gr_lfsr_32k_source_s.{h,cc,i}: new.
1700
1701         * src/lib/general/gr_check_counting_s.{h,cc,i}: renamed from gr_counting_sink.
1702         * src/lib/general/gri_lfsr_15_1_0.h: new LFSR generator with
1703         period 32K-1 bits.
1704         * src/lib/general/gri_lfsr_32k.h: new LFSR generator with period
1705         32K bits.
1706         * src/lib/general/gr_counting_sink_s.{h,cc,i}: new.  checks that
1707         it's input is a counting sequence.
1708         * src/lib/filter/Makefile.am: added missing .t files
1709
1710 2004-07-31  Eric Blossom  <eb@comsec.com>
1711
1712         * src/lib/general/gr_vector_source_X.{h,cc,i}.t: added repeat
1713         argument to constructor.
1714
1715 2004-07-30  Eric Blossom  <eb@comsec.com>
1716
1717         * src/lib/general/gr_sig_source_X.cc.t (work): now use gr_sincos
1718         to compute both at same time.
1719
1720         * src/lib/general/gr_nco.h (gr_nco): renamed method cossin -> sincos
1721         and use gr_sincos to compute value.
1722
1723         * configure.ac: upped rev to 2.1cvs.
1724
1725 2004-07-21  Eric Blossom  <eb@comsec.com>
1726
1727         * configure.ac: upped rev to 2.1.  Made release.
1728
1729 2004-07-20  Eric Blossom  <eb@comsec.com>
1730
1731         * src/python/gnuradio/optfir.py: new.  High level routines for optimal FIR design.
1732         * src/lib/general/gr_remez.{h,cc}: new.  Parks-McClellan method
1733         for optimal FIR design.
1734
1735 2004-07-19  Eric Blossom  <eb@comsec.com>
1736
1737         * src/lib/general/gri_add_const_ss_generic.cc: new.
1738         * src/lib/general/gri_add_const_ss.h: new.
1739
1740 2004-07-17  Eric Blossom  <eb@comsec.com>
1741
1742         * src/python/gnuradio/gr/flow_graph.py (buffer_sizes.allocate):
1743         take into account output_multiple when computing buffer size.
1744
1745         * src/lib/runtime/gr_block.i: added output_multiple and
1746         relative_rate to swig interface.
1747
1748 2004-07-12  Eric Blossom  <eb@comsec.com>
1749
1750         * configure.ac: upped rev to 2.0cvs
1751
1752         * src/python/gnuradio/sdr_1000.py: added back in.
1753         * src/lib/io/sdr_1000.{h,cc}: added back in.
1754
1755 2004-07-11  Eric Blossom  <eb@comsec.com>
1756
1757         * config/gr_boost.m4 (GR_REQUIRE_BOOST_INCLUDES): new m4 macro.
1758
1759 2004-07-09  Eric Blossom  <eb@comsec.com>
1760
1761         * src/lib/audio-oss: removed all files and moved to gr-audio-oss package.
1762
1763 2004-07-04  Eric Blossom  <eb@comsec.com>
1764
1765         * src/lib/general/gr_{add,sub,multiply,divide}_XX.{h,i,cc}.t: new
1766         * src/lib/general/gr_multiply_const_XX.{h,i,cc}.t: new
1767         * src/lib/runtime/gr_block.{h,cc} (class gr_block): renamed
1768         basic_work method to general_work
1769         * src/lib/general/gr_sync_block.{h,cc} (class gr_sync_block): 
1770         renamed sync_work method to work.
1771
1772 2004-07-03  Eric Blossom  <eb@comsec.com>
1773
1774         * src/python/gnuradio/gr/scheduler.py: new.  Now run graph in
1775         separate thread.
1776         * src/lib/runtime/gr_single_threaded_scheduler.{h,i,cc}: added
1777         stop method.
1778         * src/lib/general/gr_noise_source_X.{h,i,cc}.t: new random noise source.
1779         * config/gr_swig.m4: fail, not warn, if the right version isn't found.
1780         * src/lib/general/gr_random.{h,cc}: moved implementation specific
1781         defines out of header and into implementation.  Also moved statics
1782         into class and cleaned up a couple of other annoyances.
1783
1784 2004-07-01  Eric Blossom  <eb@comsec.com>
1785
1786         * src/python/gnuradio/gr/run_tests.in: new.  Sets PYTHONPATH
1787         for sucessful testing in build tree; runs all tests.
1788         * src/lib/runtime/{gr_block.i,gr_swig_block_magic.i}: revised to
1789         use lambda expression for repr printing instead of referencing global.
1790         * src/lib/swig/Makefile.am: now generate standalone swig runtime
1791         library that all other swig modules link against.
1792         
1793 2004-06-21  Eric Blossom  <eb@comsec.com>
1794
1795         Cleaned up interface to microtune modules and eval boards.
1796         Now uses boost::shared_ptr's.  Refactored all uses 4937 and 4702,
1797         and corresponding eval board classes.
1798         
1799         * src/lib/io/i2c.{h,cc}: split into i2c.{h,cc} and i2c_bitbang.{h,cc}
1800         * src/lib/io/eval_board_4702_defs.h: deleted.
1801         * src/lib/io/i2cio.{h,cc}: renamed to i2c_bbio.{h,cc}
1802         * src/lib/io/i2cio_pp.{h,cc}: renamed to i2c_bbio_pp.{h,cc}
1803
1804 2004-06-13  Eric Blossom  <eb@comsec.com>
1805
1806         * src/lib/general/gr_quadrature_demod_cf.{i,h,cc}: new.
1807
1808         * src/lib/audio-oss/gr_audio_sink_oss.{i,h,cc}: new.
1809         FIXME: should be moved into a different build tree to decouple oss
1810         dependency.
1811
1812         * src/lib/io/gr_file_{sink,source}.{i,h,cc} io.i: new.
1813         
1814 2004-06-12  Eric Blossom  <eb@comsec.com>
1815
1816         * src/lib/general/gr_sig_source_X.{h,cc,i}.t: new
1817         * src/lib/general/gr_sig_source_waveform.h: new
1818         * src/lib/general/gr_head.{h,cc,i}: new
1819
1820         * src/lib/runtime/gr_block_detail.cc (set_done), gr_buffer.h:
1821         propagate "done" upstream
1822
1823
1824 2004-XX-XX  Eric Blossom  <eb@comsec.com>
1825
1826         Months of changes...  This was whatever it took to get
1827         the beginning of the new code base working...
1828         
1829 2004-03-11  Eric Blossom  <eb@comsec.com>
1830
1831         * src/lib/runtime/io_signature.{h,cc},
1832         * src/lib/runtime/qa_io_signature.{h,cc}: new.
1833
1834 2004-03-08  Eric Blossom  <eb@comsec.com>
1835
1836         Removed cppunit from our build tree and updated qa code to work
1837         with cppunit-1.9.12
1838
1839         * Makefile.am
1840         * bootstrap
1841         * configure.ac
1842         * config/Makefile.am
1843         * config/cppunit.m4
1844         * src/lib/Makefile.am
1845         * src/lib/atsc/convolutional_interleaver.h
1846         * src/lib/atsc/qa_atsc_basic_trellis_encoder.cc
1847         * src/lib/atsc/qa_atsc_data_interleaver.cc
1848         * src/lib/atsc/qa_atsc_equalizer_nop.cc
1849         * src/lib/atsc/qa_atsc_fake_single_viterbi.cc
1850         * src/lib/atsc/qa_atsc_fs_correlator.cc
1851         * src/lib/atsc/qa_atsc_randomizer.cc
1852         * src/lib/atsc/qa_atsc_reed_solomon.cc
1853         * src/lib/atsc/qa_atsc_single_viterbi.cc
1854         * src/lib/atsc/qa_atsc_trellis_encoder.cc
1855         * src/lib/atsc/qa_atsc_viterbi_decoder.cc
1856         * src/lib/atsc/qa_convolutional_interleaver.cc
1857         * src/lib/atsc/qa_interleaver_fifo.cc
1858         * src/lib/filter/qa_complex_dotprod_x86.cc
1859         * src/lib/filter/qa_float_dotprod_x86.cc
1860         * src/lib/filter/qa_gr_fir_CCF.cc
1861         * src/lib/filter/qa_gr_fir_FCC.cc
1862         * src/lib/filter/qa_gr_fir_FFF.cc
1863         * src/lib/filter/qa_gr_fir_SCC.cc
1864         * src/lib/filter/qa_gr_mmse_fir_interpolator.cc
1865         * src/lib/filter/qa_sse_float_dotprod.cc
1866         * src/lib/general/qa_gr_circular_file.cc
1867         * src/lib/general/qa_gr_firdes.cc
1868         * src/lib/general/old/qa_gr_fir_SSS.cc
1869         * src/lib/general/old/qa_gr_fir_sse.cc
1870         * src/lib/runtime/qa_gr_vmcircbuf.cc
1871         * src/lib/vrx/VrComplex.h
1872         * src/tests/GrTestSink.cc
1873         * src/tests/GrTestSkippingSink.cc
1874         * src/tests/GrTestSource.cc
1875
1876         
1877
1878 This code was derived from gnuradio-0.9 with a massive amount of hacking.
1879         
1880 #
1881 # Copyright 2001,2002,2003,2004,2005,2006 Free Software Foundation, Inc.
1882
1883 # This file is part of GNU Radio
1884
1885 # GNU Radio is free software; you can redistribute it and/or modify
1886 # it under the terms of the GNU General Public License as published by
1887 # the Free Software Foundation; either version 3, or (at your option)
1888 # any later version.
1889
1890 # GNU Radio is distributed in the hope that it will be useful,
1891 # but WITHOUT ANY WARRANTY; without even the implied warranty of
1892 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1893 # GNU General Public License for more details.
1894
1895 # You should have received a copy of the GNU General Public License
1896 # along with GNU Radio; see the file COPYING.  If not, write to
1897 # the Free Software Foundation, Inc., 51 Franklin Street,
1898 # Boston, MA 02110-1301, USA.
1899