36 VtdEgoSensor(uint64_t
id, std::shared_ptr<VtdSensorData> data,
37 std::shared_ptr<TaskControl> task_control)
38 : EgoSensor(
"vtd/ego_sensor"), id_(
id), data_{data}, task_control_{task_control} {}
44 return task_control_->get_steering_wheel_speed(id_);
49 std::shared_ptr<VtdSensorData> data_;
50 std::shared_ptr<TaskControl> task_control_;
56 : ObjectSensor(
"vtd/world_sensor"), data_{data} {}
61 const Eigen::Isometry3d&
mount_pose()
const override {
return data_->get_mount_pose(); }
64 std::shared_ptr<VtdSensorData> data_;
70 : LaneBoundarySensor(
"vtd/lane_boundary_sensor"), data_{data} {}
74 return data_->get_lane_boundaries();
77 const Eigen::Isometry3d&
mount_pose()
const override {
return data_->get_mount_pose(); }
80 std::shared_ptr<VtdSensorData> data_;
81 std::shared_ptr<TaskControl> task_control_;
86 explicit VtdDriverRequest(uint64_t
id, std::shared_ptr<TaskControl> task_control)
87 : DriverRequest(
"vtd/driver_request"), id_(
id), task_control_{task_control} {}
92 return task_control_->has_driver_request_acceleration(id_);
96 boost::optional<double> accel;
98 accel = task_control_->get_driver_request_acceleration(id_);
104 return task_control_->has_driver_request_steering_angle(id_);
108 boost::optional<double> angle;
110 angle = task_control_->get_driver_request_steering_angle(id_);
117 std::shared_ptr<TaskControl> task_control_;
Definition: driver_request.hpp:31
Definition: ego_sensor.hpp:31
Definition: lane_sensor.hpp:33
Definition: object_sensor.hpp:33
Definition: vtd_sensor_components.hpp:84
bool has_steering_angle() const override
Definition: vtd_sensor_components.hpp:103
boost::optional< double > acceleration() const override
Definition: vtd_sensor_components.hpp:95
bool has_acceleration() const override
Definition: vtd_sensor_components.hpp:91
boost::optional< double > steering_angle() const override
Definition: vtd_sensor_components.hpp:107
Definition: vtd_sensor_components.hpp:34
const cloe::Object & sensed_state() const override
Definition: vtd_sensor_components.hpp:41
double wheel_steering_angle() const override
Definition: vtd_sensor_components.hpp:42
virtual double steering_wheel_speed() const override
Definition: vtd_sensor_components.hpp:43
Definition: vtd_sensor_components.hpp:67
const Eigen::Isometry3d & mount_pose() const override
Definition: vtd_sensor_components.hpp:77
const cloe::LaneBoundaries & sensed_lane_boundaries() const override
Definition: vtd_sensor_components.hpp:73
const cloe::Frustum & frustum() const override
Definition: vtd_sensor_components.hpp:76
Definition: vtd_sensor_components.hpp:53
const cloe::Objects & sensed_objects() const override
Definition: vtd_sensor_components.hpp:59
const Eigen::Isometry3d & mount_pose() const override
Definition: vtd_sensor_components.hpp:61
const cloe::Frustum & frustum() const override
Definition: vtd_sensor_components.hpp:60
std::vector< std::shared_ptr< Object > > Objects
Definition: object.hpp:109
Definition: frustum.hpp:37
Definition: object.hpp:49