};
bool power;
+ bool halted;
std::map<unsigned, TurnoutState> turnouts;
std::map<unsigned, LocoState> locos;
std::map<unsigned, bool> sensors;
Msp::Time::TimeDelta turnout_delay;
+ int turnout_fail_rate;
public:
- Dummy(const std::string &);
+ Dummy(const Options &);
virtual void set_power(bool);
virtual bool get_power() const { return power; }
- virtual void halt(bool) { }
- virtual bool is_halted() const { return false; }
+ virtual void halt(bool);
+ virtual bool is_halted() const { return halted; }
virtual const char *enumerate_protocols(unsigned) const;
virtual unsigned get_protocol_speed_steps(const std::string &) const;
+ virtual DetectedLocomotive *enumerate_detected_locos(unsigned) const { return 0; }
virtual unsigned add_loco(unsigned a, const std::string &, const VehicleType &) { return a; }
virtual void remove_loco(unsigned) { }
virtual void set_loco_speed(unsigned, unsigned);
virtual void set_sensor(unsigned, bool);
virtual bool get_sensor(unsigned) const;
+ virtual const TelemetryInfo *enumerate_telemetry(unsigned) const { return 0; }
+ virtual float get_telemetry_value(const std::string &) const;
+
virtual void tick();
virtual void flush() { }
};