-void BlockAllocator::release_until(const Block &block)
-{
- for(BlockList::iterator i=blocks.begin(); i!=cur_blocks_end; ++i)
- if(i->block()==&block)
- {
- if(++i!=cur_blocks_end)
- release_blocks_begin(i);
- return;
- }
-}
-
-bool BlockAllocator::release_from(const Block &block)
-{
- bool have_sensor = false;
- for(BlockList::iterator i=cur_blocks_end; i!=blocks.end(); ++i)
- {
- if(i->block()==&block)
- {
- if(have_sensor)
- release_blocks_end(i);
- return have_sensor;
- }
- else if((*i)->get_sensor_id())
- have_sensor = true;
- }
-
- return false;
-}
-
-void BlockAllocator::release_noncurrent()
-{
- release_blocks_end(cur_blocks_end);
-}
-