Public Member Functions | Private Attributes | List of all members
solver_plugins::CeresSolver Class Reference

#include <ceres_solver.hpp>

Inheritance diagram for solver_plugins::CeresSolver:
Inheritance graph
[legend]

Public Member Functions

virtual void AddConstraint (karto::Edge< karto::LocalizedRangeScan > *pEdge)
 
virtual void AddNode (karto::Vertex< karto::LocalizedRangeScan > *pVertex)
 
 CeresSolver ()
 
virtual void Clear ()
 
virtual void Compute ()
 
virtual const karto::ScanSolver::IdPoseVectorGetCorrections () const
 
virtual std::unordered_map< int, Eigen::Vector3d > * getGraph ()
 
virtual void GetNodeOrientation (const int &unique_id, double &pose)
 
virtual void ModifyNode (const int &unique_id, Eigen::Vector3d pose)
 
virtual void RemoveConstraint (kt_int32s sourceId, kt_int32s targetId)
 
virtual void RemoveNode (kt_int32s id)
 
virtual void Reset ()
 
virtual ~CeresSolver ()
 
- Public Member Functions inherited from karto::ScanSolver
 ScanSolver ()
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 
virtual ~ScanSolver ()
 

Private Attributes

ceres::LocalParameterization * angle_local_parameterization_
 
std::unordered_map< size_t, ceres::ResidualBlockId > * blocks_
 
karto::ScanSolver::IdPoseVector corrections_
 
bool debug_logging_
 
std::unordered_map< int, Eigen::Vector3d >::iterator first_node_
 
ceres::LossFunction * loss_function_
 
std::unordered_map< int, Eigen::Vector3d > * nodes_
 
boost::mutex nodes_mutex_
 
ceres::Solver::Options options_
 
ceres::Problem::Options options_problem_
 
ceres::Problem * problem_
 
bool was_constant_set_
 

Additional Inherited Members

- Public Types inherited from karto::ScanSolver
typedef std::vector< std::pair< kt_int32s, Pose2 > > IdPoseVector
 

Detailed Description

Definition at line 30 of file ceres_solver.hpp.

Constructor & Destructor Documentation

◆ CeresSolver()

solver_plugins::CeresSolver::CeresSolver ( )

Definition at line 18 of file ceres_solver.cpp.

◆ ~CeresSolver()

solver_plugins::CeresSolver::~CeresSolver ( )
virtual

Definition at line 152 of file ceres_solver.cpp.

Member Function Documentation

◆ AddConstraint()

void solver_plugins::CeresSolver::AddConstraint ( karto::Edge< karto::LocalizedRangeScan > *  )
virtual

Adds a constraint to the solver

Reimplemented from karto::ScanSolver.

Definition at line 299 of file ceres_solver.cpp.

◆ AddNode()

void solver_plugins::CeresSolver::AddNode ( karto::Vertex< karto::LocalizedRangeScan > *  )
virtual

Adds a node to the solver

Reimplemented from karto::ScanSolver.

Definition at line 275 of file ceres_solver.cpp.

◆ Clear()

void solver_plugins::CeresSolver::Clear ( )
virtual

Resets the solver

Reimplemented from karto::ScanSolver.

Definition at line 236 of file ceres_solver.cpp.

◆ Compute()

void solver_plugins::CeresSolver::Compute ( )
virtual

Solve!

Implements karto::ScanSolver.

Definition at line 170 of file ceres_solver.cpp.

◆ GetCorrections()

const karto::ScanSolver::IdPoseVector & solver_plugins::CeresSolver::GetCorrections ( ) const
virtual

Get corrected poses after optimization

Returns
optimized poses

Implements karto::ScanSolver.

Definition at line 229 of file ceres_solver.cpp.

◆ getGraph()

std::unordered_map< int, Eigen::Vector3d > * solver_plugins::CeresSolver::getGraph ( )
virtual

Get graph stored

Reimplemented from karto::ScanSolver.

Definition at line 436 of file ceres_solver.cpp.

◆ GetNodeOrientation()

void solver_plugins::CeresSolver::GetNodeOrientation ( const int &  unique_id,
double &  pose 
)
virtual

Get node's yaw

Reimplemented from karto::ScanSolver.

Definition at line 424 of file ceres_solver.cpp.

◆ ModifyNode()

void solver_plugins::CeresSolver::ModifyNode ( const int &  unique_id,
Eigen::Vector3d  pose 
)
virtual

Modify a node's pose

Reimplemented from karto::ScanSolver.

Definition at line 410 of file ceres_solver.cpp.

◆ RemoveConstraint()

void solver_plugins::CeresSolver::RemoveConstraint ( kt_int32s  ,
kt_int32s   
)
virtual

Removes a constraint from the solver

Reimplemented from karto::ScanSolver.

Definition at line 384 of file ceres_solver.cpp.

◆ RemoveNode()

void solver_plugins::CeresSolver::RemoveNode ( kt_int32s  )
virtual

Removes a node from the solver

Reimplemented from karto::ScanSolver.

Definition at line 355 of file ceres_solver.cpp.

◆ Reset()

void solver_plugins::CeresSolver::Reset ( )
virtual

Resets the solver for reinitialization

Reimplemented from karto::ScanSolver.

Definition at line 243 of file ceres_solver.cpp.

Member Data Documentation

◆ angle_local_parameterization_

ceres::LocalParameterization* solver_plugins::CeresSolver::angle_local_parameterization_
private

Definition at line 60 of file ceres_solver.hpp.

◆ blocks_

std::unordered_map<size_t, ceres::ResidualBlockId>* solver_plugins::CeresSolver::blocks_
private

Definition at line 65 of file ceres_solver.hpp.

◆ corrections_

karto::ScanSolver::IdPoseVector solver_plugins::CeresSolver::corrections_
private

Definition at line 53 of file ceres_solver.hpp.

◆ debug_logging_

bool solver_plugins::CeresSolver::debug_logging_
private

Definition at line 61 of file ceres_solver.hpp.

◆ first_node_

std::unordered_map<int, Eigen::Vector3d>::iterator solver_plugins::CeresSolver::first_node_
private

Definition at line 66 of file ceres_solver.hpp.

◆ loss_function_

ceres::LossFunction* solver_plugins::CeresSolver::loss_function_
private

Definition at line 58 of file ceres_solver.hpp.

◆ nodes_

std::unordered_map<int, Eigen::Vector3d>* solver_plugins::CeresSolver::nodes_
private

Definition at line 64 of file ceres_solver.hpp.

◆ nodes_mutex_

boost::mutex solver_plugins::CeresSolver::nodes_mutex_
private

Definition at line 67 of file ceres_solver.hpp.

◆ options_

ceres::Solver::Options solver_plugins::CeresSolver::options_
private

Definition at line 56 of file ceres_solver.hpp.

◆ options_problem_

ceres::Problem::Options solver_plugins::CeresSolver::options_problem_
private

Definition at line 57 of file ceres_solver.hpp.

◆ problem_

ceres::Problem* solver_plugins::CeresSolver::problem_
private

Definition at line 59 of file ceres_solver.hpp.

◆ was_constant_set_

bool solver_plugins::CeresSolver::was_constant_set_
private

Definition at line 61 of file ceres_solver.hpp.


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


slam_toolbox
Author(s): Steve Macenski
autogenerated on Thu Jan 11 2024 03:37:56