|
Apollo
6.0
Open source self driving car software
|
This is the interface class of vehicle controller. It defines pure virtual functions, and also some implemented common functions. More...
#include <vehicle_controller.h>


Public Member Functions | |
| virtual | ~VehicleController ()=default |
| virtual common::ErrorCode | Init (const VehicleParameter ¶ms, CanSender< ChassisDetail > *const can_sender, MessageManager< ChassisDetail > *const message_manager)=0 |
| initialize the vehicle controller. More... | |
| virtual bool | Start ()=0 |
| start the vehicle controller. More... | |
| virtual void | Stop ()=0 |
| stop the vehicle controller. More... | |
| virtual Chassis | chassis ()=0 |
| calculate and return the chassis. More... | |
| virtual common::ErrorCode | Update (const control::ControlCommand &command) |
| update the vehicle controller. More... | |
| virtual common::ErrorCode | SetDrivingMode (const Chassis::DrivingMode &driving_mode) |
| set vehicle to appointed driving mode. More... | |
Protected Member Functions | |
| virtual Chassis::DrivingMode | driving_mode () |
| virtual void | set_driving_mode (const Chassis::DrivingMode &driving_mode) |
Protected Attributes | |
| canbus::VehicleParameter | params_ |
| common::VehicleParam | vehicle_params_ |
| CanSender< ChassisDetail > * | can_sender_ = nullptr |
| MessageManager< ChassisDetail > * | message_manager_ = nullptr |
| bool | is_initialized_ = false |
| Chassis::DrivingMode | driving_mode_ = Chassis::COMPLETE_MANUAL |
| bool | is_reset_ = false |
| std::mutex | mode_mutex_ |
This is the interface class of vehicle controller. It defines pure virtual functions, and also some implemented common functions.
|
virtualdefault |
|
pure virtual |
calculate and return the chassis.
Implemented in apollo::canbus::lincoln::LincolnController, apollo::canbus::lexus::LexusController, apollo::canbus::gem::GemController, apollo::canbus::ch::ChController, apollo::canbus::transit::TransitController, apollo::canbus::wey::WeyController, apollo::canbus::zhongyun::ZhongyunController, apollo::canbus::devkit::DevkitController, apollo::canbus::neolix_edu::Neolix_eduController, and apollo::canbus::ge3::Ge3Controller.
|
protectedvirtual |
|
pure virtual |
initialize the vehicle controller.
| can_sender | a pointer to canbus sender. |
| message_manager | a pointer to the message_manager. |
|
protectedvirtual |
|
virtual |
set vehicle to appointed driving mode.
| driving | mode to be appointed. |
|
pure virtual |
start the vehicle controller.
Implemented in apollo::canbus::lincoln::LincolnController, apollo::canbus::lexus::LexusController, apollo::canbus::gem::GemController, apollo::canbus::ch::ChController, apollo::canbus::transit::TransitController, apollo::canbus::wey::WeyController, apollo::canbus::zhongyun::ZhongyunController, apollo::canbus::devkit::DevkitController, apollo::canbus::neolix_edu::Neolix_eduController, and apollo::canbus::ge3::Ge3Controller.
|
pure virtual |
stop the vehicle controller.
Implemented in apollo::canbus::lincoln::LincolnController, apollo::canbus::lexus::LexusController, apollo::canbus::gem::GemController, apollo::canbus::ch::ChController, apollo::canbus::transit::TransitController, apollo::canbus::wey::WeyController, apollo::canbus::zhongyun::ZhongyunController, apollo::canbus::devkit::DevkitController, apollo::canbus::neolix_edu::Neolix_eduController, and apollo::canbus::ge3::Ge3Controller.
|
virtual |
update the vehicle controller.
| command | the control command |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
1.8.13