$darkmode
Public Member Functions | |
| BasicController (const std::string &name, const BasicConfiguration &c) | |
| void | abort () override |
| void | enroll (Registrar &r) override |
| void | set_vehicle (std::shared_ptr< cloe::Vehicle > v) override |
| Duration | process (const Sync &sync) override |
Public Member Functions inherited from cloe::Controller | |
| virtual bool | has_vehicle () const |
| virtual std::shared_ptr< Vehicle > | get_vehicle () const |
| virtual void | set_vehicle (std::shared_ptr< Vehicle > v) |
Public Member Functions inherited from cloe::Model | |
| virtual | ~Model () noexcept=default |
| virtual Duration | resolution () const |
| virtual bool | is_connected () const |
| virtual bool | is_operational () const |
| virtual void | connect () |
| virtual void | disconnect () |
| virtual void | start (const Sync &) |
| virtual void | pause (const Sync &) |
| virtual void | resume (const Sync &) |
| virtual void | stop (const Sync &) |
| virtual void | reset () |
| Entity (std::string name) | |
| Entity (std::string name, std::string desc) | |
Public Member Functions inherited from cloe::Entity | |
| Entity (std::string name) | |
| Entity (std::string name, std::string desc) | |
| const std::string & | name () const |
| void | set_name (std::string name) |
| const std::string & | description () const |
| void | set_description (std::string desc) |
Protected Attributes | |
| AdaptiveCruiseControl | acc_ |
| AutoEmergencyBraking | aeb_ |
| LaneKeepingAssistant | lka_ |
| std::string | driver_request_ |
| utility::ContactMap< Duration > | hmi_ |
Protected Attributes inherited from cloe::Controller | |
| std::shared_ptr< Vehicle > | veh_ {nullptr} |
Protected Attributes inherited from cloe::Model | |
| bool | connected_ {false} |
| bool | operational_ {false} |
Protected Attributes inherited from cloe::Entity | |
| std::string | name_ |
| std::string | desc_ |
Friends | |
| void | to_json (Json &j, const BasicController &c) |
Additional Inherited Members | |
Protected Member Functions inherited from cloe::Entity | |
| virtual Logger | logger () const |
|
inlineoverridevirtual |
Signal an abort to model processing.
This method is called asynchronously. It is highly recommended to make use of a std::atomic_bool for purposes of making the abortion request known to other parts of the model. This method is called when the user requests the simulation to be aborted, e.g., by sending the SIGINT signal.
An abort will be followed by a stop if the simulation was started.
The default implementation will throw an error. This will be caught and possibly ignored. Otherwise, the simulation will be killed.
Reimplemented from cloe::Model.
|
inlineoverridevirtual |
Register any events, actions, or handlers with the registrar.
Reimplemented from cloe::Model.
Perform model processing given the simulation context.
In particular, the model may read and write information from and to data it has, in particular any vehicles.
is_operational() should return true.sync.time(). Implements cloe::Model.