Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
double_pose_updater.cpp
Go to the documentation of this file.
2
5 this->_received_first_velocities_ = false;
6 this->_received_first_odometry_ = false;
7 this->_accumulated_odometry_pose_difference_ = Eigen::Vector3d::Zero();
8 this->_last_odometry_pose_ = Eigen::Vector3d::Zero();
10 rclcpp::Time(0); // Initialize the last velocities receive time
11}
12
21
23 if (this == &other) return *this; // Prevent self-assignment
24
25 // Copy each member individually
26 DifferenceBasedReadyPoseUpdater::operator=(other); // Call base class assignment operator
32
33 return *this;
34}
35
37 std::shared_ptr<V2PMotionModel> motion_model) {}
38
40 return true; // TODO: implement this shit
41}
42
Class to update the pose of the vehicle, including a method to check if the pose is ready for graph u...
DifferenceBasedReadyPoseUpdater & operator=(const DifferenceBasedReadyPoseUpdater &other)
TODO: abandoned for now, not working properly.
bool second_pose_difference_ready() const override
Check if the second pose difference is ready.
DoublePoseUpdater(const SLAMParameters &params)
rclcpp::Time _last_velocities_receive_time_
Last pose update timestamp for velocities.
Eigen::Vector3d _accumulated_odometry_pose_difference_
Accumulated odometry pose difference since the last pose update.
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)
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.