Main MRPT website > C++ reference for MRPT 1.4.0
CHierarchicalMHMap.h
Go to the documentation of this file.
1/* +---------------------------------------------------------------------------+
2 | Mobile Robot Programming Toolkit (MRPT) |
3 | http://www.mrpt.org/ |
4 | |
5 | Copyright (c) 2005-2016, Individual contributors, see AUTHORS file |
6 | See: http://www.mrpt.org/Authors - All rights reserved. |
7 | Released under BSD License. See details in http://www.mrpt.org/License |
8 +---------------------------------------------------------------------------+ */
9#ifndef CHierarchicalMHMap_H
10#define CHierarchicalMHMap_H
11
18
19
20namespace mrpt
21{
22 namespace hmtslam
23 {
25
26 /** The most high level class for storing hybrid, multi-hypothesis maps in a graph-based model.
27 * This class is used within the HMT-SLAM implementation in CHMTSLAM.
28 * \sa CHMTSLAM, CHMHMapArc, CHMHMapNode, CHierarchicalMHMapPartition
29 * \ingroup mrpt_hmtslam_grp
30 */
31 class HMTSLAM_IMPEXP CHierarchicalMHMap : public mrpt::utils::CSerializable, public CHierarchicalMapMHPartition
32 {
33 friend class CHMHMapArc;
34 friend class CHMHMapNode;
35
36 // This must be added to any CSerializable derived class:
38 protected:
39 /** Event handler to be called just after a node has being created: it will be added to the internal list.
40 */
42
43 /** Event handler to be called just after an arc has being created: it will be added to the internal list.
44 */
46
47 /** Event handler to be called just before a node is being destroyed: it will be removed from the internal list.
48 * \note At *addition we use a smart pointer to assure all the implied guys use the same smrt. pnt., but at destructors the objects don't know anything but "this", thus the usage of plain pointers.
49 */
51
52 /** Event handler to be called just before an arc is being destroyed: it will be removed from the internal list.
53 * \note At *addition we use a smart pointer to assure all the implied guys use the same smrt. pnt., but at destructors the objects don't know anything but "this", thus the usage of plain pointers.
54 */
56
57 public:
58 /** Default constructor
59 */
61
62 /** Destructor
63 */
64
65 /** Save the whole graph as a XML file */
66 void dumpAsXMLfile(std::string fileName) const;
67
68 /** Load a graph from a XML file */
69 void loadFromXMLfile(std::string fileName);
70
71
73
74 /** Erase all the contents of map (It delete all nodes/arcs objects)
75 */
76 void clear();
77
78 }; // End of class def.
80
81 } // End of namespace
82} // End of namespace
83
84#endif
#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...
A class for representing an arc between two nodes in a hierarchical, multi-hypothesis map.
Definition: CHMHMapArc.h:30
A class for representing a node in a hierarchical, multi-hypothesis map.
Definition: CHMHMapNode.h:38
The most high level class for storing hybrid, multi-hypothesis maps in a graph-based model.
void onArcDestruction(CHMHMapArc *arc)
Event handler to be called just before an arc is being destroyed: it will be removed from the interna...
void onNodeDestruction(CHMHMapNode *node)
Event handler to be called just before a node is being destroyed: it will be removed from the interna...
void onArcAddition(CHMHMapArcPtr &arc)
Event handler to be called just after an arc has being created: it will be added to the internal list...
void loadFromXMLfile(std::string fileName)
Load a graph from a XML file.
CHierarchicalMHMap()
Default constructor.
void dumpAsXMLfile(std::string fileName) const
Destructor.
void onNodeAddition(CHMHMapNodePtr &node)
Event handler to be called just after a node has being created: it will be added to the internal list...
void clear()
Erase all the contents of map (It delete all nodes/arcs objects)
Represents a set of nodes and arcs, posibly only a part of the whole hierarchical,...
#define HMTSLAM_IMPEXP
struct HMTSLAM_IMPEXP CHMHMapArcPtr
struct HMTSLAM_IMPEXP CHMHMapNodePtr
Definition: CHMHMapNode.h:28
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.



Page generated by Doxygen 1.9.5 for MRPT 1.4.0 SVN: at Sun Nov 27 02:56:59 UTC 2022