diff options
author | eb <eb@221aa14e-8319-0410-a670-987f0aec2ac5> | 2006-08-24 18:50:19 +0000 |
---|---|---|
committer | eb <eb@221aa14e-8319-0410-a670-987f0aec2ac5> | 2006-08-24 18:50:19 +0000 |
commit | 62959cd5d2356fa3120680a96ae6814a0c0effbe (patch) | |
tree | 3ba4d58502b95abe18c2d81b7b4ab46143e931ae /gnuradio-core/src/lib/runtime/gr_buffer.cc | |
parent | 87a17aaaecc22ba91cc04fa10c9024c8650c260a (diff) |
Trial fix for ticket:45
Changed interpretation of second argument to gr_buffer_add_reader from
"history" to "nzero_preload". If the argument is 0, no zeros are
preloaded into the buffer. This is a less surprising interpretation
than the old behavior, which when passed a zero, inserted buffersize-1
zeros ;)
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@3403 221aa14e-8319-0410-a670-987f0aec2ac5
Diffstat (limited to 'gnuradio-core/src/lib/runtime/gr_buffer.cc')
-rw-r--r-- | gnuradio-core/src/lib/runtime/gr_buffer.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gnuradio-core/src/lib/runtime/gr_buffer.cc b/gnuradio-core/src/lib/runtime/gr_buffer.cc index d3d1230967..e06786880d 100644 --- a/gnuradio-core/src/lib/runtime/gr_buffer.cc +++ b/gnuradio-core/src/lib/runtime/gr_buffer.cc @@ -179,11 +179,14 @@ gr_buffer::update_write_pointer (int nitems) } gr_buffer_reader_sptr -gr_buffer_add_reader (gr_buffer_sptr buf, int history) +gr_buffer_add_reader (gr_buffer_sptr buf, int nzero_preload) { + if (nzero_preload < 0) + throw std::invalid_argument("gr_buffer_add_reader: nzero_preload must be >= 0"); + gr_buffer_reader_sptr r (new gr_buffer_reader (buf, buf->index_sub(buf->d_write_index, - history-1))); + nzero_preload))); buf->d_readers.push_back (r.get ()); return r; |