17 #ifndef CARTOGRAPHER_CLOUD_MAP_BUILDER_CONTEXT_INTERFACE_H 18 #define CARTOGRAPHER_CLOUD_MAP_BUILDER_CONTEXT_INTERFACE_H 20 #include "async_grpc/execution_context.h" 25 #include "cartographer/mapping/proto/serialization.pb.h" 33 class MapBuilderServer;
41 std::unique_ptr<const mapping::TrajectoryBuilderInterface::InsertionResult>
51 std::function<bool(std::unique_ptr<LocalSlamResult>)>;
57 const std::map<int /* trajectory_id */, mapping::SubmapId>&,
58 const std::map<int /* trajectory_id */, mapping::NodeId>&)>;
62 std::unique_ptr<sensor::Data>
data;
91 std::unique_ptr<sensor::Data> data) = 0;
94 const mapping::proto::LocalSlamResultData& local_slam_result_data) = 0;
100 #endif // CARTOGRAPHER_CLOUD_MAP_BUILDER_CONTEXT_INTERFACE_H virtual void UnsubscribeGlobalSlamOptimizations(int subscription_index)=0
virtual void UnsubscribeLocalSlamResults(const LocalSlamSubscriptionId &subscription_id)=0
std::function< bool(std::unique_ptr< LocalSlamResult >)> LocalSlamSubscriptionCallback
std::function< bool(const std::map< int, mapping::SubmapId > &, const std::map< int, mapping::NodeId > &)> GlobalSlamOptimizationCallback
std::unique_ptr< sensor::Data > data
virtual void EnqueueSensorData(int trajectory_id, std::unique_ptr< sensor::Data > data)=0
UniversalTimeScaleClock::time_point Time
~MapBuilderContextInterface()=default
std::shared_ptr< const sensor::RangeData > range_data
virtual mapping::MapBuilderInterface & map_builder()=0
virtual LocalSlamSubscriptionId SubscribeLocalSlamResults(int trajectory_id, LocalSlamSubscriptionCallback callback)=0
virtual common::BlockingQueue< std::unique_ptr< Data > > & sensor_data_queue()=0
virtual mapping::TrajectoryBuilderInterface::LocalSlamResultCallback GetLocalSlamResultCallbackForSubscriptions()=0
MapBuilderContextInterface()=default
const int subscription_index
virtual void AddSensorDataToTrajectory(const Data &sensor_data)=0
virtual int SubscribeGlobalSlamOptimizations(GlobalSlamOptimizationCallback callback)=0
MapBuilderContextInterface & operator=(const MapBuilderContextInterface &)=delete
std::unique_ptr< const mapping::TrajectoryBuilderInterface::InsertionResult > insertion_result
virtual void EnqueueLocalSlamResultData(int trajectory_id, const std::string &sensor_id, const mapping::proto::LocalSlamResultData &local_slam_result_data)=0
virtual LocalTrajectoryUploaderInterface * local_trajectory_uploader()=0
transform::Rigid3d local_pose
std::function< void(int, common::Time, transform::Rigid3d, sensor::RangeData, std::unique_ptr< const InsertionResult >)> LocalSlamResultCallback
virtual void NotifyFinishTrajectory(int trajectory_id)=0