Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
cartographer::cloud::MapBuilderServer Class Reference

#include <map_builder_server.h>

Inheritance diagram for cartographer::cloud::MapBuilderServer:
Inheritance graph
[legend]

Public Member Functions

 MapBuilderServer (const proto::MapBuilderServerOptions &map_builder_server_options, std::unique_ptr< mapping::MapBuilderInterface > map_builder)
 
void Shutdown () final
 
void Start () final
 
void WaitForShutdown () final
 
void WaitUntilIdle () final
 
 ~MapBuilderServer ()
 
- Public Member Functions inherited from cartographer::cloud::MapBuilderServerInterface
virtual ~MapBuilderServerInterface ()
 

Static Public Member Functions

static void RegisterMetrics (metrics::FamilyFactory *family_factory)
 

Private Types

using LocalSlamResultHandlerSubscriptions = std::map< int, MapBuilderContextInterface::LocalSlamSubscriptionCallback >
 

Private Member Functions

std::map< int, LocalSlamResultHandlerSubscriptions > local_slam_subscriptions_ GUARDED_BY (subscriptions_lock_)
 
std::map< int, MapBuilderContextInterface::GlobalSlamOptimizationCallback > global_slam_subscriptions_ GUARDED_BY (subscriptions_lock_)
 
void NotifyFinishTrajectory (int trajectory_id)
 
void OnGlobalSlamOptimizations (const std::map< int, mapping::SubmapId > &last_optimized_submap_ids, const std::map< int, mapping::NodeId > &last_optimized_node_ids)
 
void OnLocalSlamResult (int trajectory_id, common::Time time, transform::Rigid3d local_pose, sensor::RangeData range_data, std::unique_ptr< const mapping::TrajectoryBuilderInterface::InsertionResult > insertion_result)
 
void ProcessSensorDataQueue ()
 
void StartSlamThread ()
 
int SubscribeGlobalSlamOptimizations (MapBuilderContextInterface::GlobalSlamOptimizationCallback callback)
 
MapBuilderContextInterface::LocalSlamSubscriptionId SubscribeLocalSlamResults (int trajectory_id, MapBuilderContextInterface::LocalSlamSubscriptionCallback callback)
 
void UnsubscribeGlobalSlamOptimizations (int subscription_index)
 
void UnsubscribeLocalSlamResults (const MapBuilderContextInterface::LocalSlamSubscriptionId &subscription_id)
 

Private Attributes

int current_subscription_index_ = 0
 
std::unique_ptr< async_grpc::Server > grpc_server_
 
common::BlockingQueue< std::unique_ptr< MapBuilderContextInterface::Data > > incoming_data_queue_
 
std::unique_ptr< LocalTrajectoryUploaderInterfacelocal_trajectory_uploader_
 
std::unique_ptr< mapping::MapBuilderInterfacemap_builder_
 
bool shutting_down_ = false
 
std::unique_ptr< std::thread > slam_thread_
 
int starting_submap_index_ = 0
 
common::Mutex subscriptions_lock_
 

Detailed Description

Definition at line 73 of file map_builder_server.h.

Member Typedef Documentation

◆ LocalSlamResultHandlerSubscriptions

Definition at line 103 of file map_builder_server.h.

Constructor & Destructor Documentation

◆ MapBuilderServer()

cartographer::cloud::MapBuilderServer::MapBuilderServer ( const proto::MapBuilderServerOptions &  map_builder_server_options,
std::unique_ptr< mapping::MapBuilderInterface map_builder 
)

Definition at line 53 of file map_builder_server.cc.

◆ ~MapBuilderServer()

cartographer::cloud::MapBuilderServer::~MapBuilderServer ( )
inline

Definition at line 81 of file map_builder_server.h.

Member Function Documentation

◆ GUARDED_BY() [1/2]

std::map<int , LocalSlamResultHandlerSubscriptions> local_slam_subscriptions_ cartographer::cloud::MapBuilderServer::GUARDED_BY ( subscriptions_lock_  )
private

◆ GUARDED_BY() [2/2]

std::map<int , MapBuilderContextInterface::GlobalSlamOptimizationCallback> global_slam_subscriptions_ cartographer::cloud::MapBuilderServer::GUARDED_BY ( subscriptions_lock_  )
private

◆ NotifyFinishTrajectory()

void cartographer::cloud::MapBuilderServer::NotifyFinishTrajectory ( int  trajectory_id)
private

Definition at line 259 of file map_builder_server.cc.

◆ OnGlobalSlamOptimizations()

void cartographer::cloud::MapBuilderServer::OnGlobalSlamOptimizations ( const std::map< int, mapping::SubmapId > &  last_optimized_submap_ids,
const std::map< int, mapping::NodeId > &  last_optimized_node_ids 
)
private

Definition at line 214 of file map_builder_server.cc.

◆ OnLocalSlamResult()

void cartographer::cloud::MapBuilderServer::OnLocalSlamResult ( int  trajectory_id,
common::Time  time,
transform::Rigid3d  local_pose,
sensor::RangeData  range_data,
std::unique_ptr< const mapping::TrajectoryBuilderInterface::InsertionResult insertion_result 
)
private

Definition at line 163 of file map_builder_server.cc.

◆ ProcessSensorDataQueue()

void cartographer::cloud::MapBuilderServer::ProcessSensorDataQueue ( )
private

Definition at line 142 of file map_builder_server.cc.

◆ RegisterMetrics()

void cartographer::cloud::MapBuilderServer::RegisterMetrics ( metrics::FamilyFactory family_factory)
static

Definition at line 274 of file map_builder_server.cc.

◆ Shutdown()

void cartographer::cloud::MapBuilderServer::Shutdown ( )
finalvirtual

◆ Start()

void cartographer::cloud::MapBuilderServer::Start ( )
finalvirtual

◆ StartSlamThread()

void cartographer::cloud::MapBuilderServer::StartSlamThread ( )
private

Definition at line 155 of file map_builder_server.cc.

◆ SubscribeGlobalSlamOptimizations()

int cartographer::cloud::MapBuilderServer::SubscribeGlobalSlamOptimizations ( MapBuilderContextInterface::GlobalSlamOptimizationCallback  callback)
private

Definition at line 246 of file map_builder_server.cc.

◆ SubscribeLocalSlamResults()

MapBuilderContextInterface::LocalSlamSubscriptionId cartographer::cloud::MapBuilderServer::SubscribeLocalSlamResults ( int  trajectory_id,
MapBuilderContextInterface::LocalSlamSubscriptionCallback  callback 
)
private

Definition at line 227 of file map_builder_server.cc.

◆ UnsubscribeGlobalSlamOptimizations()

void cartographer::cloud::MapBuilderServer::UnsubscribeGlobalSlamOptimizations ( int  subscription_index)
private

Definition at line 253 of file map_builder_server.cc.

◆ UnsubscribeLocalSlamResults()

void cartographer::cloud::MapBuilderServer::UnsubscribeLocalSlamResults ( const MapBuilderContextInterface::LocalSlamSubscriptionId subscription_id)
private

Definition at line 237 of file map_builder_server.cc.

◆ WaitForShutdown()

void cartographer::cloud::MapBuilderServer::WaitForShutdown ( )
finalvirtual

◆ WaitUntilIdle()

void cartographer::cloud::MapBuilderServer::WaitUntilIdle ( )
finalvirtual

Member Data Documentation

◆ current_subscription_index_

int cartographer::cloud::MapBuilderServer::current_subscription_index_ = 0
private

Definition at line 134 of file map_builder_server.h.

◆ grpc_server_

std::unique_ptr<async_grpc::Server> cartographer::cloud::MapBuilderServer::grpc_server_
private

Definition at line 129 of file map_builder_server.h.

◆ incoming_data_queue_

common::BlockingQueue<std::unique_ptr<MapBuilderContextInterface::Data> > cartographer::cloud::MapBuilderServer::incoming_data_queue_
private

Definition at line 132 of file map_builder_server.h.

◆ local_trajectory_uploader_

std::unique_ptr<LocalTrajectoryUploaderInterface> cartographer::cloud::MapBuilderServer::local_trajectory_uploader_
private

Definition at line 140 of file map_builder_server.h.

◆ map_builder_

std::unique_ptr<mapping::MapBuilderInterface> cartographer::cloud::MapBuilderServer::map_builder_
private

Definition at line 130 of file map_builder_server.h.

◆ shutting_down_

bool cartographer::cloud::MapBuilderServer::shutting_down_ = false
private

Definition at line 127 of file map_builder_server.h.

◆ slam_thread_

std::unique_ptr<std::thread> cartographer::cloud::MapBuilderServer::slam_thread_
private

Definition at line 128 of file map_builder_server.h.

◆ starting_submap_index_

int cartographer::cloud::MapBuilderServer::starting_submap_index_ = 0
private

Definition at line 141 of file map_builder_server.h.

◆ subscriptions_lock_

common::Mutex cartographer::cloud::MapBuilderServer::subscriptions_lock_
private

Definition at line 133 of file map_builder_server.h.


The documentation for this class was generated from the following files:


cartographer
Author(s): The Cartographer Authors
autogenerated on Mon Feb 28 2022 22:00:59