Main MRPT website > C++ reference for MRPT 1.3.2
Classes | Namespaces
[mrpt-hmtslam]

Detailed Description

Back to list of all libraries | See all modules

Library mrpt-hmtslam


This library includes an implementation of the HMT-SLAM framework. See the list of classes in mrpt::hmtslam, and the application hmt-slam-gui.

NOTE: For new designs, it is recommended to try the [srba] library instead.

Classes

class  mrpt::hmtslam::CHierarchicalMapMHPartition
 Represents a set of nodes and arcs, posibly only a part of the whole hierarchical, multi-hypothesis map. More...
 
class  mrpt::hmtslam::CHierarchicalMHMap
 The most high level class for storing hybrid, multi-hypothesis maps in a graph-based model. More...
 
class  mrpt::hmtslam::CHMHMapArc
 A class for representing an arc between two nodes in a hierarchical, multi-hypothesis map. More...
 
class  mrpt::hmtslam::CHMHMapNode
 A class for representing a node in a hierarchical, multi-hypothesis map. More...
 
struct  mrpt::hmtslam::CHMTSLAM::TMessageLSLAMfromAA
 Message definition: More...
 
struct  mrpt::hmtslam::CHMTSLAM::TMessageLSLAMtoTBI
 Message definition: More...
 
struct  mrpt::hmtslam::CHMTSLAM::TMessageLSLAMfromTBI::TBI_info
 
struct  mrpt::hmtslam::CHMTSLAM::TMessageLSLAMfromTBI
 Message definition: More...
 
struct  mrpt::hmtslam::CHMTSLAM::TOptions
 A variety of options and configuration params (private, use loadOptions). More...
 
class  mrpt::hmtslam::CHMTSLAM
 An implementation of Hybrid Metric Topological SLAM (HMT-SLAM). More...
 
class  mrpt::hmtslam::CLSLAMAlgorithmBase
 Virtual base for local SLAM methods, used in mrpt::slam::CHMTSLAM. More...
 
struct  mrpt::hmtslam::CLSLAM_RBPF_2DLASER::TPathBin
 Auxiliary structure. More...
 
class  mrpt::hmtslam::CLSLAM_RBPF_2DLASER
 Implements a 2D local SLAM method based on a RBPF over an occupancy grid map. More...
 
class  mrpt::hmtslam::CLSLAMParticleData
 Auxiliary class used in mrpt::slam::CLocalMetricHypothesis for HMT-SLAM; this class keeps the data relative to each local metric particle ("a robot metric path hypothesis" and its associated metric map). More...
 
class  mrpt::hmtslam::CRobotPosesGraph
 Auxiliary class used in mrpt::slam::CLocalMetricHypothesis for HMT-SLAM; this class stores a set of robot poses and its sensory frames and pose PDF, for being stored in a HMT-map as a serializable object in annotation NODE_ANNOTATION_POSES_GRAPH. More...
 
struct  mrpt::hmtslam::CTopLCDetector_FabMap::TOptions
 Options for a TLC-detector of type FabMap, used from CHMTSLAM. More...
 
class  mrpt::hmtslam::CTopLCDetector_FabMap
 
struct  mrpt::hmtslam::CTopLCDetector_GridMatching::TOptions
 Options for a TLC-detector of type gridmap-matching, used from CHMTSLAM. More...
 
class  mrpt::hmtslam::CTopLCDetector_GridMatching
 
class  mrpt::hmtslam::CTopLCDetectorBase
 The virtual base class for Topological Loop-closure Detectors; used in HMT-SLAM. More...
 
class  mrpt::hmtslam::THypothesisIDSet
 A set of hypothesis IDs, used for arcs and nodes in multi-hypothesis hybrid maps. More...
 

Namespaces

 mrpt::hmtslam
 Classes related to the implementation of Hybrid Metric Topological (HMT) SLAM.
 

Related to the input queue:

enum  mrpt::hmtslam::CHMTSLAM::TLSlamMethod { mrpt::hmtslam::CHMTSLAM::lsmRBPF_2DLASER = 1 }
 
std::queue< mrpt::utils::CSerializablePtrmrpt::hmtslam::CHMTSLAM::m_inputQueue
 The queue of pending actions/observations supplied by the user waiting for being processed. More...
 
synch::CCriticalSection mrpt::hmtslam::CHMTSLAM::m_inputQueue_cs
 Critical section for accessing m_inputQueue. More...
 
synch::CCriticalSection mrpt::hmtslam::CHMTSLAM::m_map_cs
 Critical section for accessing m_map. More...
 
synch::CCriticalSection mrpt::hmtslam::CHMTSLAM::m_LMHs_cs
 Critical section for accessing m_LMHs. More...
 
void mrpt::hmtslam::CHMTSLAM::clearInputQueue ()
 Empty the input queue. More...
 
bool mrpt::hmtslam::CHMTSLAM::isInputQueueEmpty ()
 Returns true if the input queue is empty (Note that the queue must not be empty to the user to enqueue more actions/observaitions) More...
 
size_t mrpt::hmtslam::CHMTSLAM::inputQueueSize ()
 Returns the number of objects waiting for processing in the input queue. More...
 
void mrpt::hmtslam::CHMTSLAM::pushAction (const mrpt::obs::CActionCollectionPtr &acts)
 Here the user can enter an action into the system (will go to the SLAM process). More...
 
void mrpt::hmtslam::CHMTSLAM::pushObservations (const mrpt::obs::CSensoryFramePtr &sf)
 Here the user can enter observations into the system (will go to the SLAM process). More...
 
void mrpt::hmtslam::CHMTSLAM::pushObservation (const mrpt::obs::CObservationPtr &obs)
 Here the user can enter an observation into the system (will go to the SLAM process). More...
 
mrpt::utils::CSerializablePtr mrpt::hmtslam::CHMTSLAM::getNextObjectFromInputQueue ()
 Used from the LSLAM thread to retrieve the next object from the queue. More...
 

Enumeration Type Documentation

Enumerator
lsmRBPF_2DLASER 

Definition at line 203 of file CHMTSLAM.h.

Function Documentation

void mrpt::hmtslam::CHMTSLAM::clearInputQueue ( )

Empty the input queue.

mrpt::utils::CSerializablePtr mrpt::hmtslam::CHMTSLAM::getNextObjectFromInputQueue ( )
protected

Used from the LSLAM thread to retrieve the next object from the queue.

Returns
The object, or NULL if empty.
size_t mrpt::hmtslam::CHMTSLAM::inputQueueSize ( )

Returns the number of objects waiting for processing in the input queue.

See also
pushAction,pushObservations, isInputQueueEmpty
bool mrpt::hmtslam::CHMTSLAM::isInputQueueEmpty ( )

Returns true if the input queue is empty (Note that the queue must not be empty to the user to enqueue more actions/observaitions)

See also
pushAction,pushObservations, inputQueueSize
void mrpt::hmtslam::CHMTSLAM::pushAction ( const mrpt::obs::CActionCollectionPtr &  acts)

Here the user can enter an action into the system (will go to the SLAM process).

This class will delete the passed object when required, so DO NOT DELETE the passed object after calling this.

See also
pushObservations,pushObservation
void mrpt::hmtslam::CHMTSLAM::pushObservation ( const mrpt::obs::CObservationPtr &  obs)

Here the user can enter an observation into the system (will go to the SLAM process).

This class will delete the passed object when required, so DO NOT DELETE the passed object after calling this.

See also
pushAction,pushObservation
void mrpt::hmtslam::CHMTSLAM::pushObservations ( const mrpt::obs::CSensoryFramePtr &  sf)

Here the user can enter observations into the system (will go to the SLAM process).

This class will delete the passed object when required, so DO NOT DELETE the passed object after calling this.

See also
pushAction,pushObservation

Variable Documentation

std::queue<mrpt::utils::CSerializablePtr> mrpt::hmtslam::CHMTSLAM::m_inputQueue
protected

The queue of pending actions/observations supplied by the user waiting for being processed.

Definition at line 215 of file CHMTSLAM.h.

synch::CCriticalSection mrpt::hmtslam::CHMTSLAM::m_inputQueue_cs
protected

Critical section for accessing m_inputQueue.

Definition at line 218 of file CHMTSLAM.h.

synch::CCriticalSection mrpt::hmtslam::CHMTSLAM::m_LMHs_cs
protected

Critical section for accessing m_LMHs.

Definition at line 223 of file CHMTSLAM.h.

synch::CCriticalSection mrpt::hmtslam::CHMTSLAM::m_map_cs
protected

Critical section for accessing m_map.

Definition at line 221 of file CHMTSLAM.h.




Page generated by Doxygen 1.8.9.1 for MRPT 1.3.2 SVN:Unversioned directory at Tue Dec 8 09:49:21 UTC 2015