#include <constraint_builder_3d.h>
Classes | |
struct | SubmapScanMatcher |
Public Member Functions | |
ConstraintBuilder3D (const proto::ConstraintBuilderOptions &options, common::ThreadPoolInterface *thread_pool) | |
ConstraintBuilder3D (const ConstraintBuilder3D &) | |
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 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 Eigen::Quaterniond &global_node_rotation, const Eigen::Quaterniond &global_submap_rotation) |
void | NotifyEndOfNode () |
ConstraintBuilder3D & | operator= (const ConstraintBuilder3D &) |
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) LOCKS_EXCLUDED(mutex_) |
const SubmapScanMatcher * | DispatchScanMatcherConstruction (const SubmapId &submap_id, const Submap3D *submap) EXCLUSIVE_LOCKS_REQUIRED(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 () LOCKS_EXCLUDED(mutex_) |
Private Attributes | |
scan_matching::CeresScanMatcher3D | ceres_scan_matcher_ |
std::unique_ptr< std::function < void(const Result &)> > when_done_ | GUARDED_BY (mutex_) |
absl::Mutex | mutex_ |
const proto::ConstraintBuilderOptions | options_ |
common::FixedRatioSampler | sampler_ |
common::ThreadPoolInterface * | thread_pool_ |
Definition at line 58 of file constraint_builder_3d.h.
cartographer::mapping::constraints::ConstraintBuilder3D::ConstraintBuilder3D | ( | const proto::ConstraintBuilderOptions & | options, |
common::ThreadPoolInterface * | thread_pool | ||
) |
Definition at line 58 of file constraint_builder_3d.cc.
Definition at line 68 of file constraint_builder_3d.cc.
cartographer::mapping::constraints::ConstraintBuilder3D::ConstraintBuilder3D | ( | const ConstraintBuilder3D & | ) |
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 192 of file constraint_builder_3d.cc.
void cartographer::mapping::constraints::ConstraintBuilder3D::DeleteScanMatcher | ( | const SubmapId & | submap_id | ) |
Definition at line 330 of file constraint_builder_3d.cc.
const ConstraintBuilder3D::SubmapScanMatcher * cartographer::mapping::constraints::ConstraintBuilder3D::DispatchScanMatcherConstruction | ( | const SubmapId & | submap_id, |
const Submap3D * | submap | ||
) | [private] |
Definition at line 164 of file constraint_builder_3d.cc.
Definition at line 325 of file constraint_builder_3d.cc.
int num_started_nodes_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private, pure virtual] |
int num_finished_nodes_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private, pure virtual] |
std::unique_ptr<common::Task> finish_node_task_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private] |
std::unique_ptr<common::Task> when_done_task_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private] |
std::deque<std::unique_ptr<Constraint> > constraints_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private] |
std::map<SubmapId, SubmapScanMatcher> submap_scan_matchers_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private] |
common::Histogram score_histogram_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private] |
common::Histogram rotational_score_histogram_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private] |
common::Histogram low_resolution_score_histogram_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY | ( | mutex_ | ) | [private] |
void cartographer::mapping::constraints::ConstraintBuilder3D::MaybeAddConstraint | ( | const SubmapId & | submap_id, |
const Submap3D * | submap, | ||
const NodeId & | node_id, | ||
const TrajectoryNode::Data *const | constant_data, | ||
const transform::Rigid3d & | global_node_pose, | ||
const transform::Rigid3d & | global_submap_pose | ||
) |
Definition at line 77 of file constraint_builder_3d.cc.
void cartographer::mapping::constraints::ConstraintBuilder3D::MaybeAddGlobalConstraint | ( | const SubmapId & | submap_id, |
const Submap3D * | submap, | ||
const NodeId & | node_id, | ||
const TrajectoryNode::Data *const | constant_data, | ||
const Eigen::Quaterniond & | global_node_rotation, | ||
const Eigen::Quaterniond & | global_submap_rotation | ||
) |
Definition at line 109 of file constraint_builder_3d.cc.
Definition at line 137 of file constraint_builder_3d.cc.
ConstraintBuilder3D& cartographer::mapping::constraints::ConstraintBuilder3D::operator= | ( | const ConstraintBuilder3D & | ) |
void cartographer::mapping::constraints::ConstraintBuilder3D::RegisterMetrics | ( | metrics::FamilyFactory * | family_factory | ) | [static] |
Definition at line 339 of file constraint_builder_3d.cc.
void cartographer::mapping::constraints::ConstraintBuilder3D::RunWhenDoneCallback | ( | ) | [private] |
Definition at line 297 of file constraint_builder_3d.cc.
void cartographer::mapping::constraints::ConstraintBuilder3D::WhenDone | ( | const std::function< void(const Result &)> & | callback | ) |
Definition at line 151 of file constraint_builder_3d.cc.
scan_matching::CeresScanMatcher3D cartographer::mapping::constraints::ConstraintBuilder3D::ceres_scan_matcher_ [private] |
Definition at line 174 of file constraint_builder_3d.h.
std::unique_ptr<std::function<void(const Result&)> > when_done_ cartographer::mapping::constraints::ConstraintBuilder3D::GUARDED_BY(mutex_) [private] |
Definition at line 150 of file constraint_builder_3d.h.
absl::Mutex cartographer::mapping::constraints::ConstraintBuilder3D::mutex_ [private] |
Definition at line 146 of file constraint_builder_3d.h.
const proto::ConstraintBuilderOptions cartographer::mapping::constraints::ConstraintBuilder3D::options_ [private] |
Definition at line 144 of file constraint_builder_3d.h.
common::FixedRatioSampler cartographer::mapping::constraints::ConstraintBuilder3D::sampler_ [private] |
Definition at line 173 of file constraint_builder_3d.h.
common::ThreadPoolInterface* cartographer::mapping::constraints::ConstraintBuilder3D::thread_pool_ [private] |
Definition at line 145 of file constraint_builder_3d.h.