+void BlockAllocator::update_next_sensor(Sensor *after)
+{
+ BlockList::iterator i = cur_blocks_end;
+ if(after)
+ i = find_if(i, blocks.end(), BlockMatch(*after->get_block()));
+
+ for(; i!=blocks.end(); ++i)
+ if(Sensor *sensor = (*i)->get_sensor())
+ if(sensor!=next_sensor)
+ {
+ next_sensor = sensor;
+ return;
+ }
+
+ next_sensor = 0;
+}
+