void hint(unsigned);
};
+ sigc::signal<void, Block &, Sensor *> signal_advanced;
+ sigc::signal<void, Block &> signal_rear_advanced;
+
private:
struct BlockMatch;
void set_active(bool);
bool is_active() const { return active; }
- void start_from(const BlockIter &);
+ bool start_from(const BlockIter &);
void rewind_to(const Block &);
void clear();
bool empty() const { return blocks.empty(); }
private:
void reserve_more();
bool reserve_block(const BlockIter &);
- void advance_to(const Block *);
+ void advance_front(const Block *, bool);
+ void advance_front(const Sensor *);
+ void advance_back();
void release_blocks_begin(const BlockList::iterator &);
void release_blocks_end(const BlockList::iterator &);
void release_block(const BlockList::iterator &);