steering-wheel-rpi/include/BaseDataSource.h

35 lines
1009 B
C++

#pragma once
class BaseDataSource {
public:
double get_speed(); // in km/h
double get_brake_balance(); // 0.0 - 1.0
double get_hv_voltage(); // in V
double get_hv_voltage_ratio(); // 0.0 - 1.0
double get_lv_voltage(); // in V
double get_battery_temperature(); // in °C
double get_throttle_ratio(); // 0.0 - 1.0
double get_brake_pressure_front_bar(); // in bar
double get_brake_pressure_rear_bar(); // in bar
bool brake_balance_change_is_recent(); // true if the last change was less
// than 1 second ago
virtual void poll() = 0;
protected:
void set_brake_balance(double value);
double speed;
double brake_balance;
double hv_voltage;
double hv_voltage_ratio;
double lv_voltage;
double battery_temperature;
double throttle_ratio;
double brake_pressure_front_bar;
double brake_pressure_rear_bar;
int time_of_last_brake_balance_change;
};