9#ifndef HMT_SLAM_common_H
10#define HMT_SLAM_common_H
19#define COMMON_TOPOLOG_HYP static_cast<THypothesisID>(0)
21#define NODE_ANNOTATION_METRIC_MAPS "metricMaps"
22#define NODE_ANNOTATION_REF_POSEID "refPoseID"
23#define NODE_ANNOTATION_POSES_GRAPH "posesGraph"
25#define NODE_ANNOTATION_PLACE_POSE "placePose"
27#define ARC_ANNOTATION_DELTA "Delta"
28#define ARC_ANNOTATION_DELTA_SRC_POSEID "Delta_poseID_src"
29#define ARC_ANNOTATION_DELTA_TRG_POSEID "Delta_poseID_trg"
32#define ARC_TYPES "Membership,Navegability,RelativePose,Location"
33#define DEFAULT_ARC_TYPE "Membership"
36#define NODE_TYPES "Place,Area,TopologicalMap,Object"
37#define DEFAULT_NODE_TYPE "Place"
40#define POSEID_INVALID static_cast<TPoseID>(-1)
42#define AREAID_INVALID static_cast<uint64_t>(-1)
44#define MSG_SOURCE_LSLAM 1
45#define MSG_SOURCE_AA 2
#define DEFINE_SERIALIZABLE_POST_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
#define DEFINE_SERIALIZABLE_PRE_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
This declaration must be inserted in all CSerializable classes definition, before the class declarati...
#define COMMON_TOPOLOG_HYP
A class for representing an arc between two nodes in a hierarchical, multi-hypothesis map.
A class for representing a node in a hierarchical, multi-hypothesis map.
A class for storing a sequence of arcs (a path).
void read(utils::CStream &in)
void write(utils::CStream &out) const
mrpt::utils::list_searchable< mrpt::hmtslam::CHMHMapArcPtr > BASE
A set of hypothesis IDs, used for arcs and nodes in multi-hypothesis hybrid maps.
bool has(const THypothesisID &val) const
Returns true if the hypothesis is into the set.
void debugDump() const
Dump to console.
THypothesisIDSet()
Default constructor.
THypothesisIDSet(const THypothesisID &val)
Constructor with one initial element.
virtual ~THypothesisIDSet()
The virtual base class which provides a unified interface for all persistent objects in MRPT.
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
EIGEN_STRONG_INLINE iterator end()
class HMTSLAM_IMPEXP CHMHMapArc
int64_t THypothesisID
An integer number uniquely identifying each of the concurrent hypotheses for the robot topological pa...
std::vector< TPoseID > TPoseIDList
std::set< TPoseID > TPoseIDSet
std::pair< TPoseID, TPoseID > TPairPoseIDs
uint64_t TPoseID
An integer number uniquely identifying each robot pose stored in HMT-SLAM.
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.