std::string name;
};
+ struct TelemetryInfo
+ {
+ const char *name;
+ const char *label;
+ const char *unit;
+ unsigned precision;
+ };
+
sigc::signal<void, bool> signal_power;
sigc::signal<void, bool> signal_halt;
sigc::signal<void, const DetectedLocomotive &> signal_locomotive_detected;
virtual void set_sensor(unsigned, bool) = 0;
virtual bool get_sensor(unsigned) const = 0;
+ virtual const TelemetryInfo *enumerate_telemetry(unsigned) const = 0;
+ virtual float get_telemetry_value(const std::string &) const = 0;
+
virtual void tick() = 0;
virtual void flush() = 0;