[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] r4151 - gnuradio/trunk/gnuradio-core/src/lib/io
From: |
eb |
Subject: |
[Commit-gnuradio] r4151 - gnuradio/trunk/gnuradio-core/src/lib/io |
Date: |
Tue, 19 Dec 2006 13:22:25 -0700 (MST) |
Author: eb
Date: 2006-12-19 13:22:25 -0700 (Tue, 19 Dec 2006)
New Revision: 4151
Modified:
gnuradio/trunk/gnuradio-core/src/lib/io/gr_oscope_guts.cc
Log:
''Real'' fix for ticket:104. I should have just applied it all the
first time around ;) Thanks Don for the patch.
Modified: gnuradio/trunk/gnuradio-core/src/lib/io/gr_oscope_guts.cc
===================================================================
--- gnuradio/trunk/gnuradio-core/src/lib/io/gr_oscope_guts.cc 2006-12-19
20:11:38 UTC (rev 4150)
+++ gnuradio/trunk/gnuradio-core/src/lib/io/gr_oscope_guts.cc 2006-12-19
20:22:25 UTC (rev 4151)
@@ -60,11 +60,11 @@
d_update_rate (20),
d_trigger_level (0),
d_obi (0),
- d_state (LOOK_FOR_TRIGGER),
+ d_state (HOLD_OFF),
d_decimator_count (0),
d_decimator_count_init (1),
d_hold_off_count (0),
- d_hold_off_count_init (0),
+ d_hold_off_count_init (OUTPUT_RECORD_SIZE/2-1),
d_post_trigger_count (0),
d_post_trigger_count_init (OUTPUT_RECORD_SIZE/2),
d_prev_sample (0)
@@ -77,11 +77,15 @@
for (int i = 0; i < MAX_CHANNELS; i++)
d_buffer[i] = 0;
- for (int i = 0; i < d_nchannels; i++)
+ for (int i = 0; i < d_nchannels; i++){
d_buffer[i] = new float [OUTPUT_RECORD_SIZE];
+ for (int j = 0; j < OUTPUT_RECORD_SIZE; j++)
+ d_buffer[i][j] = 0.0;
+ }
+ // be sure buffer is full before first write
+ enter_hold_off ();
update_rate_or_decimation_changed ();
- enter_look_for_trigger ();
}
gr_oscope_guts::~gr_oscope_guts ()
@@ -228,9 +232,9 @@
float *out = (float *)msg->msg(); // get pointer to raw message buffer
for (int ch = 0; ch < d_nchannels; ch++){
- // note that d_obi points at the oldest sample in the buffer
+ // note that d_obi + 1 points at the oldest sample in the buffer
for (int i = 0; i < OUTPUT_RECORD_SIZE; i++)
- out[i] = d_buffer[ch][wrap_bi(d_obi + i)];
+ out[i] = d_buffer[ch][wrap_bi(d_obi + 1 + i)];
out += OUTPUT_RECORD_SIZE;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-gnuradio] r4151 - gnuradio/trunk/gnuradio-core/src/lib/io,
eb <=