From e9e00f46429441a4aa455b35844271f32981fb4c Mon Sep 17 00:00:00 2001
From: Josh Blum
Date: Wed, 22 Aug 2012 19:55:45 -0700
Subject: runtime: empty handler to task, and item sizes

---
 lib/block_handlers.cpp | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

(limited to 'lib/block_handlers.cpp')

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 &)
+{
+    
+}
-- 
cgit