Block *pending_block;
unsigned target_speed;
const Route *route;
- Msp::Time::TimeStamp try_reserve;
std::string status;
Msp::Time::TimeStamp last_entry_time;
void sensor_event(bool, Sensor *);
void turnout_path_changing(unsigned, Turnout *);
void turnout_path_changed(unsigned, Turnout *);
+ void block_reserved(const Block &, const Train *);
unsigned reserve_more();
void update_speed();
float get_real_speed(unsigned) const;
void set_status(const std::string &);
void set_position(const Block::Endpoint &);
void release_blocks(std::list<BlockRef> &);
+ void release_blocks(std::list<BlockRef> &, std::list<BlockRef>::iterator, std::list<BlockRef>::iterator);
void reverse_blocks(std::list<BlockRef> &) const;
};