A class for representing a node in a hierarchical, multi-hypothesis map.
The node itself will be considered only if some given hypothesisID matchs its own ID.
Definition at line 57 of file CHMHMapNode.h.
#include <mrpt/hmtslam/CHMHMapNode.h>
Public Types | |
typedef mrpt::utils::TNodeID | TNodeID |
The type of the IDs of nodes. | |
Public Member Functions | |
virtual | ~CHMHMapNode () |
Destructor. | |
TNodeID | getID () const |
Reads the ID of the node (read-only property) | |
unsigned int | getLevelInTheHierarchy () |
Returns the level of this node in the hierarchy of arcs "arcType_Belongs", where level=0 is the ground level, 1=its parents, etc. | |
unsigned int | getRelatedArcsCount () |
Returns the number of arcs starting from/ending into this node. | |
void | getArcs (TArcList &out) const |
Returns a list with the arcs from/to this node. | |
void | getArcs (TArcList &out, const THypothesisID &hyp_id) const |
Returns a list with the arcs from/to this node existing in a given hypothesis ID. | |
void | getArcs (TArcList &out, const char *arcType, const THypothesisID &hyp_id) const |
Returns a list with the arcs from/to this node existing in a given hypothesis ID and of a given type. | |
bool | isNeighbor (const TNodeID &otherArea, const THypothesisID &hyp_id) const |
Check whether an arc exists towards the given area. | |
Static Public Member Functions | |
static CHMHMapNodePtr | Create (CHierarchicalMHMap *parent=NULL, const THypothesisIDSet &hyps=THypothesisIDSet()) |
Class factory. | |
Public Attributes | |
THypothesisIDSet | m_hypotheses |
The hypothesis IDs under which this node exists. | |
utils::CMHPropertiesValuesList | m_annotations |
The annotations of the node, see the general description of the class for possible properties and values. | |
utils::CTypeSelector | m_nodeType |
The type of the node, the possibilities are:
| |
std::string | m_label |
The label of the node, only for display it to the user. | |
Protected Member Functions | |
void | onArcDestruction (CHMHMapArc *arc) |
Event handler for arc destruction: It should be only called for arcs from/to this node, altought other case must be handled without effects. | |
void | onArcAddition (CHMHMapArcPtr &arc) |
Event handler for arc addition: It should be only called for arcs from/to this node, altought other cases have no effects. | |
Protected Attributes | |
TNodeID | m_ID |
An unique identifier for the node: it is randomly generated at construction or read from stream when loaded. | |
TArcList | m_arcs |
The list of all arcs from/to this node: | |
safe_ptr< CHierarchicalMHMap > | m_parent |
The hierarchical graph in which this object is into. | |
Private Member Functions | |
CHMHMapNode (CHierarchicalMHMap *parent=NULL, const THypothesisIDSet &hyps=THypothesisIDSet()) | |
Private constructor (see ::Create class factory) | |
Friends | |
class HMTSLAM_IMPEXP | CHierarchicalMHMap |
class HMTSLAM_IMPEXP | CHierarchicalMHMapPartition |
class HMTSLAM_IMPEXP | CHMHMapArc |
RTTI stuff | |
typedef CHMHMapNodePtr | SmartPtr |
static mrpt::utils::CLASSINIT | _init_CHMHMapNode |
static mrpt::utils::TRuntimeClassId | classCHMHMapNode |
static const mrpt::utils::TRuntimeClassId * | classinfo |
static const mrpt::utils::TRuntimeClassId * | _GetBaseClass () |
virtual const mrpt::utils::TRuntimeClassId * | GetRuntimeClass () const |
Returns information about the class of an object in runtime. | |
virtual mrpt::utils::CObject * | duplicate () const |
Returns a copy of the object, indepently of its class. | |
static mrpt::utils::CObject * | CreateObject () |
static CHMHMapNodePtr | Create () |
A typedef for the associated smart pointer
Definition at line 64 of file CHMHMapNode.h.
The type of the IDs of nodes.
Definition at line 69 of file CHMHMapNode.h.
mrpt::hmtslam::CHMHMapNode::CHMHMapNode | ( | CHierarchicalMHMap * | parent = NULL , |
const THypothesisIDSet & | hyps = THypothesisIDSet() |
||
) | [private] |
Private constructor (see ::Create class factory)
virtual mrpt::hmtslam::CHMHMapNode::~CHMHMapNode | ( | ) | [virtual] |
Destructor.
static const mrpt::utils::TRuntimeClassId* mrpt::hmtslam::CHMHMapNode::_GetBaseClass | ( | ) | [static, protected] |
Reimplemented from mrpt::utils::CSerializable.
static CHMHMapNodePtr mrpt::hmtslam::CHMHMapNode::Create | ( | ) | [static] |
static CHMHMapNodePtr mrpt::hmtslam::CHMHMapNode::Create | ( | CHierarchicalMHMap * | parent = NULL , |
const THypothesisIDSet & | hyps = THypothesisIDSet() |
||
) | [static] |
Class factory.
static mrpt::utils::CObject* mrpt::hmtslam::CHMHMapNode::CreateObject | ( | ) | [static] |
virtual mrpt::utils::CObject* mrpt::hmtslam::CHMHMapNode::duplicate | ( | ) | const [virtual] |
Returns a copy of the object, indepently of its class.
Implements mrpt::utils::CObject.
void mrpt::hmtslam::CHMHMapNode::getArcs | ( | TArcList & | out, |
const THypothesisID & | hyp_id | ||
) | const |
Returns a list with the arcs from/to this node existing in a given hypothesis ID.
void mrpt::hmtslam::CHMHMapNode::getArcs | ( | TArcList & | out | ) | const [inline] |
Returns a list with the arcs from/to this node.
Definition at line 145 of file CHMHMapNode.h.
void mrpt::hmtslam::CHMHMapNode::getArcs | ( | TArcList & | out, |
const char * | arcType, | ||
const THypothesisID & | hyp_id | ||
) | const |
Returns a list with the arcs from/to this node existing in a given hypothesis ID and of a given type.
TNodeID mrpt::hmtslam::CHMHMapNode::getID | ( | ) | const |
Reads the ID of the node (read-only property)
unsigned int mrpt::hmtslam::CHMHMapNode::getLevelInTheHierarchy | ( | ) |
Returns the level of this node in the hierarchy of arcs "arcType_Belongs", where level=0 is the ground level, 1=its parents, etc.
unsigned int mrpt::hmtslam::CHMHMapNode::getRelatedArcsCount | ( | ) |
Returns the number of arcs starting from/ending into this node.
virtual const mrpt::utils::TRuntimeClassId* mrpt::hmtslam::CHMHMapNode::GetRuntimeClass | ( | ) | const [virtual] |
Returns information about the class of an object in runtime.
Reimplemented from mrpt::utils::CSerializable.
bool mrpt::hmtslam::CHMHMapNode::isNeighbor | ( | const TNodeID & | otherArea, |
const THypothesisID & | hyp_id | ||
) | const |
Check whether an arc exists towards the given area.
void mrpt::hmtslam::CHMHMapNode::onArcAddition | ( | CHMHMapArcPtr & | arc | ) | [protected] |
Event handler for arc addition: It should be only called for arcs from/to this node, altought other cases have no effects.
void mrpt::hmtslam::CHMHMapNode::onArcDestruction | ( | CHMHMapArc * | arc | ) | [protected] |
Event handler for arc destruction: It should be only called for arcs from/to this node, altought other case must be handled without effects.
friend class HMTSLAM_IMPEXP CHierarchicalMHMap [friend] |
Definition at line 59 of file CHMHMapNode.h.
friend class HMTSLAM_IMPEXP CHierarchicalMHMapPartition [friend] |
Definition at line 60 of file CHMHMapNode.h.
friend class HMTSLAM_IMPEXP CHMHMapArc [friend] |
Definition at line 61 of file CHMHMapNode.h.
mrpt::utils::CLASSINIT mrpt::hmtslam::CHMHMapNode::_init_CHMHMapNode [static, protected] |
Definition at line 64 of file CHMHMapNode.h.
Definition at line 64 of file CHMHMapNode.h.
const mrpt::utils::TRuntimeClassId* mrpt::hmtslam::CHMHMapNode::classinfo [static] |
Definition at line 64 of file CHMHMapNode.h.
The annotations of the node, see the general description of the class for possible properties and values.
Definition at line 117 of file CHMHMapNode.h.
TArcList mrpt::hmtslam::CHMHMapNode::m_arcs [protected] |
The list of all arcs from/to this node:
Definition at line 82 of file CHMHMapNode.h.
The hypothesis IDs under which this node exists.
Definition at line 73 of file CHMHMapNode.h.
TNodeID mrpt::hmtslam::CHMHMapNode::m_ID [protected] |
An unique identifier for the node: it is randomly generated at construction or read from stream when loaded.
Definition at line 78 of file CHMHMapNode.h.
std::string mrpt::hmtslam::CHMHMapNode::m_label |
The label of the node, only for display it to the user.
Definition at line 133 of file CHMHMapNode.h.
The type of the node, the possibilities are:
Definition at line 125 of file CHMHMapNode.h.
The hierarchical graph in which this object is into.
Definition at line 95 of file CHMHMapNode.h.
Page generated by Doxygen 1.7.3 for MRPT 0.9.4 SVN: at Sat Mar 26 06:40:17 UTC 2011 |