Class BatteryPublisher

Inheritance Relationships

Derived Types

Class Documentation

class BatteryPublisher

Subclassed by husarion_ugv_battery::DualBatteryPublisher, husarion_ugv_battery::SingleBatteryPublisher

Public Functions

BatteryPublisher(const rclcpp::Node::SharedPtr &node, const std::shared_ptr<diagnostic_updater::Updater> &diagnostic_updater, const double battery_timeout)
inline ~BatteryPublisher()
void Publish()

Protected Functions

virtual void Update() = 0
virtual void Reset() = 0
virtual void PublishBatteryState() = 0
virtual void PublishChargingStatus() = 0
virtual void LogErrors() = 0
virtual void DiagnoseErrors(diagnostic_updater::DiagnosticStatusWrapper &status) = 0
virtual void DiagnoseStatus(diagnostic_updater::DiagnosticStatusWrapper &status) = 0
bool TimeoutReached()
void BatteryStatusLogger(const BatteryStateMsg &battery_state)
bool ChargerConnected() const
std::string MapPowerSupplyStatusToString(uint8_t power_supply_status) const
rclcpp::Logger GetLogger()
rclcpp::Clock::SharedPtr GetClock()

Protected Attributes

rclcpp::Node::WeakPtr node_
std::shared_ptr<diagnostic_updater::Updater> diagnostic_updater_