27 #include <boost/optional.hpp>
39 using Component::Component;
48 target_acceleration_ = a;
52 virtual boost::optional<double> acceleration() {
return target_acceleration_; }
57 virtual bool is_acceleration()
const {
return static_cast<bool>(target_acceleration_); }
66 target_steering_angle_ = a;
70 virtual boost::optional<double> steering_angle() {
return target_steering_angle_; }
75 virtual bool is_steering_angle()
const {
return static_cast<bool>(target_steering_angle_); }
92 {
"target_acceleration", target_acceleration_},
93 {
"target_steering_angle", target_steering_angle_},
94 {
"actuation_label", level_.to_human_cstr()},
100 target_acceleration_.reset();
101 target_steering_angle_.reset();
108 target_acceleration_.reset();
109 target_steering_angle_.reset();
115 boost::optional<double> target_acceleration_;
116 boost::optional<double> target_steering_angle_;
121 using Actuator::Actuator;
128 using Actuator::Actuator;
Definition: actuator.hpp:32
Definition: component.hpp:143
Duration process(const Sync &sync) override
Definition: component.hpp:181
void reset() override
Definition: component.hpp:186
Definition: latlong_actuator.hpp:126
Definition: latlong_actuator.hpp:37
virtual void set_steering_angle(double a)
Definition: latlong_actuator.hpp:65
virtual void set_acceleration(double a)
Definition: latlong_actuator.hpp:47
virtual bool is_acceleration() const
Definition: latlong_actuator.hpp:57
Duration process(const Sync &sync) override
Definition: latlong_actuator.hpp:98
void reset() override
Definition: latlong_actuator.hpp:106
virtual bool is_steering_angle() const
Definition: latlong_actuator.hpp:75
utility::ActuationLevel actuation_level() const
Definition: latlong_actuator.hpp:82
fable::Json active_state() const override
Definition: latlong_actuator.hpp:90
Definition: latlong_actuator.hpp:119
Definition: actuation_level.hpp:48
std::chrono::nanoseconds Duration
Definition: cloe_fwd.hpp:36
nlohmann::json Json
Definition: fable_fwd.hpp:35