DUNE: Uniform Navigational Environment
2019.02.1
|
Fuel Filter for Fuel Level.
Classes | |
struct | Arguments |
struct | BatteryModel |
Public Types |
Public Member Functions | |
FuelFilter (Arguments *args, unsigned eids[BatteryData::BM_TOTAL], const EPMap *epower, Tasks::Task *task=NULL, bool real_clock=false, double start_time=0.0) | |
~FuelFilter (void) | |
void | onVoltage (const IMC::Voltage *msg) |
void | onCurrent (const IMC::Current *msg) |
void | onTemperature (const IMC::Temperature *msg) |
void | onVehicleState (const IMC::VehicleState *msg) |
void | onEntityActivationState (const IMC::EntityActivationState *msg) |
bool | update (void) |
void | fillMessage (IMC::FuelLevel &fl, const std::vector< std::string > &labels, const std::vector< float > &values) |
|
inline |
|
inline |
|
inline |
References Monitors::FuelLevel::FuelFilter::BatteryModel::current, Monitors::FuelLevel::FuelFilter::BatteryModel::energy, DUNE::Math::linearInterpolation(), MDL_OPT, MDL_PES, MDL_TOTAL, MDL_VCOLD, MDL_ZERO, MGD_ATAC, MGD_FTAC, MGD_RATED, DUNE::Math::piecewiseLI(), Monitors::FuelLevel::FuelFilter::BatteryModel::temp, update(), and Monitors::FuelLevel::FuelFilter::BatteryModel::voltage.
Referenced by Monitors::FuelLevel::Task::task().
|
inline |
On Current message.
[in] | msg | pointer to Current message |
Referenced by Monitors::FuelLevel::Task::consume().
|
inline |
On EntityActivationState message.
[in] | msg | pointer to EntityActivationState message |
Referenced by Monitors::FuelLevel::Task::consume().
|
inline |
On Temperature message.
[in] | msg | pointer to Temperature message |
Referenced by Monitors::FuelLevel::Task::consume().
|
inline |
On VehicleState message.
[in] | msg | pointer to VehicleState message |
Referenced by Monitors::FuelLevel::Task::consume().
|
inline |
On Voltage message.
[in] | msg | pointer to Voltage message |
References Monitors::FuelLevel::BatteryData::BM_VOLTAGE.
Referenced by Monitors::FuelLevel::Task::consume().
|
inline |
Update fuel filter.
References MDL_OPT, and MDL_PES.
Referenced by fillMessage(), and Monitors::FuelLevel::Task::task().