34 VtdEgoSensor(uint64_t
id, std::shared_ptr<VtdSensorData> data,
35 std::shared_ptr<TaskControl> task_control)
36 : EgoSensor(
"vtd/ego_sensor"), id_(
id), data_{data}, task_control_{task_control} {}
42 return task_control_->get_steering_wheel_speed(id_);
47 std::shared_ptr<VtdSensorData> data_;
48 std::shared_ptr<TaskControl> task_control_;
54 : ObjectSensor(
"vtd/world_sensor"), data_{data} {}
59 const Eigen::Isometry3d&
mount_pose()
const override {
return data_->get_mount_pose(); }
62 std::shared_ptr<VtdSensorData> data_;
68 : LaneBoundarySensor(
"vtd/lane_boundary_sensor"), data_{data} {}
72 return data_->get_lane_boundaries();
75 const Eigen::Isometry3d&
mount_pose()
const override {
return data_->get_mount_pose(); }
78 std::shared_ptr<VtdSensorData> data_;
79 std::shared_ptr<TaskControl> task_control_;
84 explicit VtdDriverRequest(uint64_t
id, std::shared_ptr<TaskControl> task_control)
85 : DriverRequest(
"vtd/driver_request"), id_(
id), task_control_{task_control} {}
90 return task_control_->has_driver_request_acceleration(id_);
94 boost::optional<double> accel;
96 accel = task_control_->get_driver_request_acceleration(id_);
102 return task_control_->has_driver_request_steering_angle(id_);
106 boost::optional<double> angle;
108 angle = task_control_->get_driver_request_steering_angle(id_);
115 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:82
bool has_steering_angle() const override
Definition: vtd_sensor_components.hpp:101
boost::optional< double > acceleration() const override
Definition: vtd_sensor_components.hpp:93
bool has_acceleration() const override
Definition: vtd_sensor_components.hpp:89
boost::optional< double > steering_angle() const override
Definition: vtd_sensor_components.hpp:105
Definition: vtd_sensor_components.hpp:32
const cloe::Object & sensed_state() const override
Definition: vtd_sensor_components.hpp:39
double wheel_steering_angle() const override
Definition: vtd_sensor_components.hpp:40
virtual double steering_wheel_speed() const override
Definition: vtd_sensor_components.hpp:41
Definition: vtd_sensor_components.hpp:65
const Eigen::Isometry3d & mount_pose() const override
Definition: vtd_sensor_components.hpp:75
const cloe::LaneBoundaries & sensed_lane_boundaries() const override
Definition: vtd_sensor_components.hpp:71
const cloe::Frustum & frustum() const override
Definition: vtd_sensor_components.hpp:74
Definition: vtd_sensor_components.hpp:51
const cloe::Objects & sensed_objects() const override
Definition: vtd_sensor_components.hpp:57
const Eigen::Isometry3d & mount_pose() const override
Definition: vtd_sensor_components.hpp:59
const cloe::Frustum & frustum() const override
Definition: vtd_sensor_components.hpp:58
std::vector< std::shared_ptr< Object > > Objects
Definition: object.hpp:128
Definition: frustum.hpp:37
Definition: object.hpp:51