summaryrefslogtreecommitdiff
path: root/lib/block_task.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/block_task.cpp')
-rw-r--r--lib/block_task.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/block_task.cpp b/lib/block_task.cpp
index 2495f01..41f1787 100644
--- a/lib/block_task.cpp
+++ b/lib/block_task.cpp
@@ -125,6 +125,8 @@ void BlockActor::handle_task(void)
//-- initialize input buffers before work
//------------------------------------------------------------------
size_t output_inline_index = 0;
+ this->input_items.min_items() = ~0;
+ this->input_items.max_items() = 0;
for (size_t i = 0; i < num_inputs; i++)
{
this->sort_tags(i);
@@ -137,6 +139,8 @@ void BlockActor::handle_task(void)
this->input_items[i].get() = mem;
this->input_items[i].size() = items;
+ this->input_items.min_items() = std::min(this->input_items.min_items(), items);
+ this->input_items.max_items() = std::max(this->input_items.max_items(), items);
//inline dealings, how and when input buffers can be inlined into output buffers
//continue;
@@ -157,6 +161,8 @@ void BlockActor::handle_task(void)
//------------------------------------------------------------------
//-- initialize output buffers before work
//------------------------------------------------------------------
+ this->output_items.min_items() = ~0;
+ this->output_items.max_items() = 0;
for (size_t i = 0; i < num_outputs; i++)
{
ASSERT(this->output_queues.ready(i));
@@ -167,6 +173,8 @@ void BlockActor::handle_task(void)
this->output_items[i].get() = mem;
this->output_items[i].size() = items;
+ this->output_items.min_items() = std::min(this->output_items.min_items(), items);
+ this->output_items.max_items() = std::max(this->output_items.max_items(), items);
}
//------------------------------------------------------------------