Classes | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
cartographer::mapping::constraints::ConstraintBuilder3D Class Referenceabstract

#include <constraint_builder_3d.h>

Classes

struct  SubmapScanMatcher
 

Public Types

using Constraint = mapping::PoseGraphInterface::Constraint
 
using Result = std::vector< Constraint >
 

Public Member Functions

 ConstraintBuilder3D (const proto::ConstraintBuilderOptions &options, common::ThreadPoolInterface *thread_pool)
 
 ConstraintBuilder3D (const ConstraintBuilder3D &)=delete
 
void DeleteScanMatcher (const SubmapId &submap_id)
 
int GetNumFinishedNodes ()
 
void MaybeAddConstraint (const SubmapId &submap_id, const Submap3D *submap, const NodeId &node_id, const TrajectoryNode::Data *const constant_data, const std::vector< TrajectoryNode > &submap_nodes, const transform::Rigid3d &global_node_pose, const transform::Rigid3d &global_submap_pose)
 
void MaybeAddGlobalConstraint (const SubmapId &submap_id, const Submap3D *submap, const NodeId &node_id, const TrajectoryNode::Data *const constant_data, const std::vector< TrajectoryNode > &submap_nodes, const Eigen::Quaterniond &global_node_rotation, const Eigen::Quaterniond &global_submap_rotation)
 
void NotifyEndOfNode ()
 
ConstraintBuilder3Doperator= (const ConstraintBuilder3D &)=delete
 
void WhenDone (const std::function< void(const Result &)> &callback)
 
 ~ConstraintBuilder3D ()
 

Static Public Member Functions

static void RegisterMetrics (metrics::FamilyFactory *family_factory)
 

Private Member Functions

void ComputeConstraint (const SubmapId &submap_id, const NodeId &node_id, bool match_full_submap, const TrajectoryNode::Data *const constant_data, const transform::Rigid3d &global_node_pose, const transform::Rigid3d &global_submap_pose, const SubmapScanMatcher &submap_scan_matcher, std::unique_ptr< Constraint > *constraint) EXCLUDES(mutex_)
 
const SubmapScanMatcherDispatchScanMatcherConstruction (const SubmapId &submap_id, const std::vector< TrajectoryNode > &submap_nodes, const Submap3D *submap) REQUIRES(mutex_)
 
std::unique_ptr< std::function< void(const Result &)> > when_done_ GUARDED_BY (mutex_)
 
int num_started_nodes_ GUARDED_BY (mutex_)=0
 
int num_finished_nodes_ GUARDED_BY (mutex_)=0
 
std::unique_ptr< common::Task > finish_node_task_ GUARDED_BY (mutex_)
 
std::unique_ptr< common::Task > when_done_task_ GUARDED_BY (mutex_)
 
std::deque< std::unique_ptr< Constraint > > constraints_ GUARDED_BY (mutex_)
 
std::map< SubmapId, SubmapScanMatcher > submap_scan_matchers_ GUARDED_BY (mutex_)
 
common::Histogram score_histogram_ GUARDED_BY (mutex_)
 
common::Histogram rotational_score_histogram_ GUARDED_BY (mutex_)
 
common::Histogram low_resolution_score_histogram_ GUARDED_BY (mutex_)
 
void RunWhenDoneCallback () EXCLUDES(mutex_)
 

Private Attributes

scan_matching::CeresScanMatcher3D ceres_scan_matcher_
 
common::Mutex mutex_
 
const proto::ConstraintBuilderOptions options_
 
common::FixedRatioSampler sampler_
 
common::ThreadPoolInterfacethread_pool_
 

Detailed Description

Definition at line 58 of file constraint_builder_3d.h.

Member Typedef Documentation

◆ Constraint

Definition at line 60 of file constraint_builder_3d.h.

◆ Result

Definition at line 61 of file constraint_builder_3d.h.

Constructor & Destructor Documentation

◆ ConstraintBuilder3D() [1/2]

cartographer::mapping::constraints::ConstraintBuilder3D::ConstraintBuilder3D ( const proto::ConstraintBuilderOptions &  options,
common::ThreadPoolInterface thread_pool 
)

Definition at line 58 of file constraint_builder_3d.cc.

◆ ~ConstraintBuilder3D()

cartographer::mapping::constraints::ConstraintBuilder3D::~ConstraintBuilder3D ( )

Definition at line 68 of file constraint_builder_3d.cc.

◆ ConstraintBuilder3D() [2/2]

cartographer::mapping::constraints::ConstraintBuilder3D::ConstraintBuilder3D ( const ConstraintBuilder3D )
delete

Member Function Documentation

◆ ComputeConstraint()

void cartographer::mapping::constraints::ConstraintBuilder3D::ComputeConstraint ( const SubmapId submap_id,
const NodeId node_id,
bool  match_full_submap,
const TrajectoryNode::Data *const  constant_data,
const transform::Rigid3d global_node_pose,
const transform::Rigid3d global_submap_pose,
const SubmapScanMatcher submap_scan_matcher,
std::unique_ptr< Constraint > *  constraint 
)
private

Definition at line 196 of file constraint_builder_3d.cc.

◆ DeleteScanMatcher()

void cartographer::mapping::constraints::ConstraintBuilder3D::DeleteScanMatcher ( const SubmapId submap_id)

Definition at line 333 of file constraint_builder_3d.cc.

◆ DispatchScanMatcherConstruction()

const ConstraintBuilder3D::SubmapScanMatcher * cartographer::mapping::constraints::ConstraintBuilder3D::DispatchScanMatcherConstruction ( const SubmapId submap_id,
const std::vector< TrajectoryNode > &  submap_nodes,
const Submap3D submap 
)
private

Definition at line 169 of file constraint_builder_3d.cc.

◆ GetNumFinishedNodes()

int cartographer::mapping::constraints::ConstraintBuilder3D::GetNumFinishedNodes ( )

Definition at line 328 of file constraint_builder_3d.cc.

◆ GUARDED_BY() [1/10]

std::unique_ptr<std::function<void(const Result&)> > when_done_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
private

◆ GUARDED_BY() [2/10]

int num_started_nodes_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
privatepure virtual

◆ GUARDED_BY() [3/10]

int num_finished_nodes_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
privatepure virtual

◆ GUARDED_BY() [4/10]

std::unique_ptr<common::Task> finish_node_task_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
private

◆ GUARDED_BY() [5/10]

std::unique_ptr<common::Task> when_done_task_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
private

◆ GUARDED_BY() [6/10]

std::deque<std::unique_ptr<Constraint> > constraints_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
private

◆ GUARDED_BY() [7/10]

std::map<SubmapId, SubmapScanMatcher> submap_scan_matchers_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
private

◆ GUARDED_BY() [8/10]

common::Histogram score_histogram_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
private

◆ GUARDED_BY() [9/10]

common::Histogram rotational_score_histogram_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
private

◆ GUARDED_BY() [10/10]

common::Histogram low_resolution_score_histogram_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY ( mutex_  )
private

◆ MaybeAddConstraint()

void cartographer::mapping::constraints::ConstraintBuilder3D::MaybeAddConstraint ( const SubmapId submap_id,
const Submap3D submap,
const NodeId node_id,
const TrajectoryNode::Data *const  constant_data,
const std::vector< TrajectoryNode > &  submap_nodes,
const transform::Rigid3d global_node_pose,
const transform::Rigid3d global_submap_pose 
)

Definition at line 77 of file constraint_builder_3d.cc.

◆ MaybeAddGlobalConstraint()

void cartographer::mapping::constraints::ConstraintBuilder3D::MaybeAddGlobalConstraint ( const SubmapId submap_id,
const Submap3D submap,
const NodeId node_id,
const TrajectoryNode::Data *const  constant_data,
const std::vector< TrajectoryNode > &  submap_nodes,
const Eigen::Quaterniond &  global_node_rotation,
const Eigen::Quaterniond &  global_submap_rotation 
)

Definition at line 111 of file constraint_builder_3d.cc.

◆ NotifyEndOfNode()

void cartographer::mapping::constraints::ConstraintBuilder3D::NotifyEndOfNode ( )

Definition at line 141 of file constraint_builder_3d.cc.

◆ operator=()

ConstraintBuilder3D& cartographer::mapping::constraints::ConstraintBuilder3D::operator= ( const ConstraintBuilder3D )
delete

◆ RegisterMetrics()

void cartographer::mapping::constraints::ConstraintBuilder3D::RegisterMetrics ( metrics::FamilyFactory family_factory)
static

Definition at line 342 of file constraint_builder_3d.cc.

◆ RunWhenDoneCallback()

void cartographer::mapping::constraints::ConstraintBuilder3D::RunWhenDoneCallback ( )
private

Definition at line 300 of file constraint_builder_3d.cc.

◆ WhenDone()

void cartographer::mapping::constraints::ConstraintBuilder3D::WhenDone ( const std::function< void(const Result &)> &  callback)

Definition at line 155 of file constraint_builder_3d.cc.

Member Data Documentation

◆ ceres_scan_matcher_

scan_matching::CeresScanMatcher3D cartographer::mapping::constraints::ConstraintBuilder3D::ceres_scan_matcher_
private

Definition at line 177 of file constraint_builder_3d.h.

◆ mutex_

common::Mutex cartographer::mapping::constraints::ConstraintBuilder3D::mutex_
private

Definition at line 149 of file constraint_builder_3d.h.

◆ options_

const proto::ConstraintBuilderOptions cartographer::mapping::constraints::ConstraintBuilder3D::options_
private

Definition at line 147 of file constraint_builder_3d.h.

◆ sampler_

common::FixedRatioSampler cartographer::mapping::constraints::ConstraintBuilder3D::sampler_
private

Definition at line 176 of file constraint_builder_3d.h.

◆ thread_pool_

common::ThreadPoolInterface* cartographer::mapping::constraints::ConstraintBuilder3D::thread_pool_
private

Definition at line 148 of file constraint_builder_3d.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