diff options
author | Josh Blum | 2012-09-12 21:44:50 -0700 |
---|---|---|
committer | Josh Blum | 2012-09-12 21:44:50 -0700 |
commit | c4785d122c6c0c0bd3163db1b9201eab9e286d5b (patch) | |
tree | 6a52b3e1c68fcf829d82de9ac56fca7e420782a4 /lib | |
parent | c7720bd1b740094636b0b66e6286f4c14961d31f (diff) | |
download | sandhi-c4785d122c6c0c0bd3163db1b9201eab9e286d5b.tar.gz sandhi-c4785d122c6c0c0bd3163db1b9201eab9e286d5b.tar.bz2 sandhi-c4785d122c6c0c0bd3163db1b9201eab9e286d5b.zip |
remove buffinfo struct, use sbuffer directly
Diffstat (limited to 'lib')
-rw-r--r-- | lib/block_task.cpp | 10 | ||||
-rw-r--r-- | lib/gras_impl/input_buffer_queues.hpp | 22 |
2 files changed, 12 insertions, 20 deletions
diff --git a/lib/block_task.cpp b/lib/block_task.cpp index d69e05d..3d9056e 100644 --- a/lib/block_task.cpp +++ b/lib/block_task.cpp @@ -112,13 +112,13 @@ void ElementImpl::handle_task(const tsbe::TaskInterface &task_iface) input_tokens_count += this->input_tokens[i].use_count(); ASSERT(this->input_queues.ready(i)); - const BuffInfo info = this->input_queues.front(i); - const size_t items = info.len/this->input_items_sizes[i]; + const SBuffer buff = this->input_queues.front(i); + const size_t items = buff.length/this->input_items_sizes[i]; - this->work_io_ptr_mask |= ptrdiff_t(info.mem); - this->input_items[i]._mem = info.mem; + this->work_io_ptr_mask |= ptrdiff_t(buff.get()); + this->input_items[i]._mem = buff.get(); this->input_items[i]._len = items; - this->work_input_items[i] = info.mem; + this->work_input_items[i] = buff.get(); this->work_ninput_items[i] = items; num_input_items = std::min(num_input_items, items); } diff --git a/lib/gras_impl/input_buffer_queues.hpp b/lib/gras_impl/input_buffer_queues.hpp index acde25a..44abcf1 100644 --- a/lib/gras_impl/input_buffer_queues.hpp +++ b/lib/gras_impl/input_buffer_queues.hpp @@ -29,13 +29,6 @@ namespace gnuradio { -struct BuffInfo -{ - BuffInfo(void): mem(NULL), len(0){} - void *mem; - size_t len; -}; - struct InputBufferQueues { ~InputBufferQueues(void) @@ -60,7 +53,7 @@ struct InputBufferQueues * Otherwise, resolve pointers to the input buffer, * moving the memory and length by num history bytes. */ - BuffInfo front(const size_t i); + SBuffer front(const size_t i); /*! * Rules for consume: @@ -191,7 +184,7 @@ inline void InputBufferQueues::init( } -inline BuffInfo InputBufferQueues::front(const size_t i) +inline SBuffer InputBufferQueues::front(const size_t i) { //if (_queues[i].empty()) return BuffInfo(); @@ -200,12 +193,11 @@ inline BuffInfo InputBufferQueues::front(const size_t i) __prepare(i); SBuffer &front = _queues[i].front(); - BuffInfo info; - info.mem = front.get(-_history_bytes[i]); - info.len = front.length; - info.len /= _multiple_bytes[i]; - info.len *= _multiple_bytes[i]; - return info; + SBuffer buff = front; //copy new settings + buff.offset -= _history_bytes[i]; + buff.length /= _multiple_bytes[i]; + buff.length *= _multiple_bytes[i]; + return buff; } inline void InputBufferQueues::__prepare(const size_t i) |