$darkmode
#include <esmini_ego_control.hpp>
Public Member Functions | |
| ESMiniEgoControl (uint64_t id) | |
| bool | has_level_change () |
| void | save_level_state () |
| void | step (const cloe::Sync &s) |
| cloe::Duration | process (const cloe::Sync &sync) override |
| void | reset () override |
Public Member Functions inherited from cloe::LatLongActuator | |
| virtual void | set_acceleration (double a) |
| virtual boost::optional< double > | acceleration () |
| virtual bool | is_acceleration () const |
| virtual void | set_steering_angle (double a) |
| virtual boost::optional< double > | steering_angle () |
| virtual bool | is_steering_angle () const |
| utility::ActuationLevel | actuation_level () const |
| fable::Json | active_state () const override |
| Component (const std::string &name, const std::string &description="") | |
| Component (std::string &&name, std::string &&description="") | |
Public Member Functions inherited from cloe::Component | |
| Component (const std::string &name, const std::string &description="") | |
| Component (std::string &&name, std::string &&description="") | |
| uint64_t | id () const |
| template<typename T > | |
| T * | as () |
| Duration | process (const Sync &sync) override |
| void | reset () override |
| void | abort () override |
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 | enroll (Registrar &) |
| virtual void | start (const Sync &) |
| virtual void | pause (const Sync &) |
| virtual void | resume (const Sync &) |
| virtual void | stop (const Sync &) |
| 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) |
Additional Inherited Members | |
Protected Member Functions inherited from cloe::Entity | |
| virtual Logger | logger () const |
Protected Attributes inherited from cloe::LatLongActuator | |
| utility::ActuationLevel | level_ |
| boost::optional< double > | target_acceleration_ |
| boost::optional< double > | target_steering_angle_ |
Protected Attributes inherited from cloe::Model | |
| bool | connected_ {false} |
| bool | operational_ {false} |
Protected Attributes inherited from cloe::Entity | |
| std::string | name_ |
| std::string | desc_ |
ESMiniEgoControl implements LatLongActuator for the ESMini binding. The ego vehicle position is updated in the ESMini scene using a simple vehicle model. The new ego state is either computed from the control request or a simple driver model.
|
inline |
Returns true when the controller actuation state changes from its previous configuration (lateral, longitudinal control, both or none).
|
inlineoverridevirtual |
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(). Reimplemented from cloe::LatLongActuator.
|
inlineoverridevirtual |
Reset the model state.
This is called when Cloe is asked to reset the whole simulation to time 0. This can be the case when the simulator or a controller asks us to recover from a temporary problem without repeating the whole simulation setup.
The default implementation will raise an error. So if your model is not able to re-initialize, the simulation will be aborted.
Reimplemented from cloe::LatLongActuator.
|
inline |
Needs to be called after add_driver_control and before the next clear_cache invocation.
|
inline |
Update the ego vehicle position in the scene.