35 lines
1009 B
C++
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;
|
|
};
|