22 Eigen::Vector3d::Zero();
33 std::shared_ptr<PoseUpdater>
clone()
const override {
34 return std::make_shared<DoublePoseUpdater>(*
this);
44 std::shared_ptr<V2PMotionModel> motion_model)
override;
Class to update the pose of the vehicle, including a method to check if the pose is ready for graph u...
TODO: abandoned for now, not working properly.
bool second_pose_difference_ready() const override
Check if the second pose difference is ready.
rclcpp::Time _last_velocities_receive_time_
Last pose update timestamp for velocities.
bool _received_first_odometry_
Eigen::Vector3d _accumulated_odometry_pose_difference_
Accumulated odometry pose difference since the last pose update.
bool _received_first_velocities_
void predict_pose(const MotionData &motion_data, std::shared_ptr< V2PMotionModel > motion_model) override
Updates the last pose and returns the pose difference.
DoublePoseUpdater & operator=(const DoublePoseUpdater &other)
std::shared_ptr< PoseUpdater > clone() const override
Clone the pose updater.
Eigen::Vector3d get_second_accumulated_pose_difference() const override
Get the accumulated pose difference from the second source.
Eigen::Vector3d _last_odometry_pose_
Data structure to hold motion data.
Parameters for the SLAM node.