17 #ifndef CARTOGRAPHER_MAPPING_POSE_GRAPH_H_ 18 #define CARTOGRAPHER_MAPPING_POSE_GRAPH_H_ 22 #include <unordered_map> 30 #include "cartographer/mapping/proto/pose_graph.pb.h" 31 #include "cartographer/mapping/proto/pose_graph_options.pb.h" 32 #include "cartographer/mapping/proto/serialization.pb.h" 45 common::LuaParameterDictionary*
const parameter_dictionary);
87 const proto::Submap& submap) = 0;
92 const proto::Node& node) = 0;
96 const mapping::proto::TrajectoryData& data) = 0;
110 virtual void AddTrimmer(std::unique_ptr<PoseGraphTrimmer> trimmer) = 0;
120 proto::PoseGraph
ToProto()
const override;
144 std::vector<PoseGraph::Constraint>
FromProto(
145 const ::google::protobuf::RepeatedPtrField<
146 ::cartographer::mapping::proto::PoseGraph::Constraint>&
153 #endif // CARTOGRAPHER_MAPPING_POSE_GRAPH_H_ PoseGraph & operator=(const PoseGraph &)=delete
PoseGraph::Constraint::Tag FromProto(const proto::PoseGraph::Constraint::Tag &proto)
proto::PoseGraph ToProto() const override
virtual sensor::MapByTime< sensor::ImuData > GetImuData() const =0
virtual void AddSubmapFromProto(const transform::Rigid3d &global_pose, const proto::Submap &submap)=0
virtual void AddNodeToSubmap(const NodeId &node_id, const SubmapId &submap_id)=0
virtual void AddOdometryData(int trajectory_id, const sensor::OdometryData &odometry_data)=0
virtual sensor::MapByTime< sensor::FixedFramePoseData > GetFixedFramePoseData() const =0
UniversalTimeScaleClock::time_point Time
virtual void SetInitialTrajectoryPose(int from_trajectory_id, int to_trajectory_id, const transform::Rigid3d &pose, const common::Time time)=0
virtual void FreezeTrajectory(int trajectory_id)=0
transform::Rigid3d relative_pose
virtual std::vector< std::vector< int > > GetConnectedTrajectories() const =0
proto::PoseGraphOptions CreatePoseGraphOptions(common::LuaParameterDictionary *const parameter_dictionary)
virtual void AddFixedFramePoseData(int trajectory_id, const sensor::FixedFramePoseData &fixed_frame_pose_data)=0
virtual void AddTrimmer(std::unique_ptr< PoseGraphTrimmer > trimmer)=0
virtual std::map< std::string, PoseGraph::LandmarkNode > GetLandmarkNodes() const =0
virtual SubmapData GetSubmapData(const SubmapId &submap_id) const =0
virtual std::vector< Constraint > constraints() const =0
virtual void AddImuData(int trajectory_id, const sensor::ImuData &imu_data)=0
virtual void AddSerializedConstraints(const std::vector< Constraint > &constraints)=0
virtual void AddLandmarkData(int trajectory_id, const sensor::LandmarkData &landmark_data)=0
virtual void AddNodeFromProto(const transform::Rigid3d &global_pose, const proto::Node &node)=0
virtual void SetTrajectoryDataFromProto(const mapping::proto::TrajectoryData &data)=0
virtual sensor::MapByTime< sensor::OdometryData > GetOdometryData() const =0
virtual void FinishTrajectory(int trajectory_id)=0