diff options
author | Josh Blum | 2012-08-22 19:55:45 -0700 |
---|---|---|
committer | Josh Blum | 2012-08-26 16:03:51 -0700 |
commit | e9e00f46429441a4aa455b35844271f32981fb4c (patch) | |
tree | e70b8f406bcbfd576e5d8a1fd84f5d4968ff020c /lib/block_handlers.cpp | |
parent | 963f04378fcf2693518ec4eeb43c67abb41e4cbf (diff) | |
download | sandhi-e9e00f46429441a4aa455b35844271f32981fb4c.tar.gz sandhi-e9e00f46429441a4aa455b35844271f32981fb4c.tar.bz2 sandhi-e9e00f46429441a4aa455b35844271f32981fb4c.zip |
runtime: empty handler to task, and item sizes
Diffstat (limited to 'lib/block_handlers.cpp')
-rw-r--r-- | lib/block_handlers.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/block_handlers.cpp b/lib/block_handlers.cpp index ab58aaf..f77c2c0 100644 --- a/lib/block_handlers.cpp +++ b/lib/block_handlers.cpp @@ -39,11 +39,25 @@ void resize_fill_front(V &v, const size_t new_len) resize_fill(v, new_len, v.front()); } +template <typename V, typename Sig> +void fill_item_sizes_from_sig(V &v, const Sig &s, const size_t size) +{ + v.resize(size); + for (size_t i = 0; i < v.size(); i++) + { + v[i] = s->sizeof_stream_item(i); + } +} + void ElementImpl::topology_update(const tsbe::TaskInterface &task_iface, const tsbe::Wax &state) { const size_t num_inputs = task_iface.get_num_inputs(); const size_t num_outputs = task_iface.get_num_outputs(); + //fill the item sizes from the IO signatures + fill_item_sizes_from_sig(this->input_items_sizes, this->input_signature, num_inputs); + fill_item_sizes_from_sig(this->output_items_sizes, this->output_signature, num_outputs); + //resize and fill port properties resize_fill_front(this->input_items_sizes, num_inputs); resize_fill_front(this->output_items_sizes, num_outputs); @@ -67,3 +81,8 @@ void ElementImpl::topology_update(const tsbe::TaskInterface &task_iface, const t this->input_tags.resize(num_inputs); this->output_tags.resize(num_outputs); } + +void ElementImpl::handle_task(const tsbe::TaskInterface &) +{ + +} |