This class stores a sequence of <Probabilistic Pose,SensoryFrame> pairs, thus a "metric map" can be totally determined with this information. More...
#include <mrpt/slam/CSimpleMap.h>


Public Member Functions | |
| CSimpleMap () | |
| Constructor. | |
| CSimpleMap (const CSimpleMap &o) | |
| Copy constructor. | |
| CSimpleMap & | operator= (const CSimpleMap &o) |
| Copy constructor. | |
| virtual | ~CSimpleMap () |
| Destructor:. | |
| size_t | size () const |
| Returns the pairs count. | |
| void | get (size_t index, CPose3DPDFPtr &out_posePDF, CSensoryFramePtr &out_SF) const |
| Access to the i'th pair, first one is index '0'. | |
| void | set (size_t index, const CPose3DPDFPtr &in_posePDF, const CSensoryFramePtr &in_SF) |
| Changes the i'th pair, first one is index '0'. | |
| void | set (size_t index, const CPosePDFPtr &in_posePDF, const CSensoryFramePtr &in_SF) |
| Changes the i'th pair, first one is index '0'. | |
| void | remove (size_t index) |
| Deletes the i'th pair, first one is index '0'. | |
| void | insert (const CPose3DPDF *in_posePDF, const CSensoryFrame &in_SF) |
| Add a new pair to the sequence. | |
| void | insert (const CPose3DPDF *in_posePDF, const CSensoryFramePtr &in_SF) |
| Add a new pair to the sequence, making a copy of the smart pointer (it's not made unique). | |
| void | insert (const CPose3DPDFPtr &in_posePDF, const CSensoryFramePtr &in_SF) |
| Add a new pair to the sequence, making a copy of the smart pointer (it's not made unique). | |
| void | insert (const CPosePDFPtr &in_posePDF, const CSensoryFramePtr &in_SF) |
| Add a new pair to the sequence. | |
| void | insert (const CPosePDF *in_posePDF, const CSensoryFrame &in_SF) |
| Add a new pair to the sequence. | |
| void | insert (const CPosePDF *in_posePDF, const CSensoryFramePtr &in_SF) |
| Add a new pair to the sequence. | |
| void | clear () |
| Remove all stored pairs. | |
| void | changeCoordinatesOrigin (const CPose3D &newOrigin) |
| Change the coordinate origin of all stored poses, for consistency with future new poses to enter in the system. | |
Private Types | |
| typedef std::pair < CPose3DPDFPtr, CSensoryFramePtr > | TPosePDFSensFramePair |
| typedef std::deque < TPosePDFSensFramePair > | TPosePDFSensFramePairList |
Private Attributes | |
| TPosePDFSensFramePairList | m_posesObsPairs |
| The stored data. | |
Static Private Attributes | |
| static mrpt::utils::CLASSINIT | _init_CSensFrameProbSequence |
| static mrpt::utils::TRuntimeClassId | classCSensFrameProbSequence |
This class stores a sequence of <Probabilistic Pose,SensoryFrame> pairs, thus a "metric map" can be totally determined with this information.
The pose of the sensory frame is not deterministic, but described by some PDF. Full 6D poses are used.
Definition at line 51 of file CSimpleMap.h.
typedef std::pair<CPose3DPDFPtr,CSensoryFramePtr> mrpt::slam::CSimpleMap::TPosePDFSensFramePair [private] |
Definition at line 150 of file CSimpleMap.h.
typedef std::deque<TPosePDFSensFramePair> mrpt::slam::CSimpleMap::TPosePDFSensFramePairList [private] |
Definition at line 152 of file CSimpleMap.h.
| mrpt::slam::CSimpleMap::CSimpleMap | ( | ) |
Constructor.
| mrpt::slam::CSimpleMap::CSimpleMap | ( | const CSimpleMap & | o | ) |
Copy constructor.
| virtual mrpt::slam::CSimpleMap::~CSimpleMap | ( | ) | [virtual] |
Destructor:.
| void mrpt::slam::CSimpleMap::changeCoordinatesOrigin | ( | const CPose3D & | newOrigin | ) |
| void mrpt::slam::CSimpleMap::clear | ( | ) |
Remove all stored pairs.
| void mrpt::slam::CSimpleMap::get | ( | size_t | index, | |
| CPose3DPDFPtr & | out_posePDF, | |||
| CSensoryFramePtr & | out_SF | |||
| ) | const |
Access to the i'th pair, first one is index '0'.
NOTE: This method returns pointers to the objects inside the list, nor a copy of them, so do neither modify them nor delete them. NOTE: You can pass a NULL pointer if you dont need one of the two variables to be returned.
| std::exception | On index out of bounds. |
| void mrpt::slam::CSimpleMap::insert | ( | const CPosePDF * | in_posePDF, | |
| const CSensoryFramePtr & | in_SF | |||
| ) |
Add a new pair to the sequence.
The objects are copied, so original ones can be free if desired after insertion. This version for 2D PDFs just converts the 2D PDF into 3D before calling the 3D version.
| void mrpt::slam::CSimpleMap::insert | ( | const CPosePDF * | in_posePDF, | |
| const CSensoryFrame & | in_SF | |||
| ) |
Add a new pair to the sequence.
The objects are copied, so original ones can be free if desired after insertion. This version for 2D PDFs just converts the 2D PDF into 3D before calling the 3D version.
| void mrpt::slam::CSimpleMap::insert | ( | const CPosePDFPtr & | in_posePDF, | |
| const CSensoryFramePtr & | in_SF | |||
| ) |
Add a new pair to the sequence.
The objects are copied, so original ones can be free if desired after insertion. This version for 2D PDFs just converts the 2D PDF into 3D before calling the 3D version.
| void mrpt::slam::CSimpleMap::insert | ( | const CPose3DPDFPtr & | in_posePDF, | |
| const CSensoryFramePtr & | in_SF | |||
| ) |
Add a new pair to the sequence, making a copy of the smart pointer (it's not made unique).
| void mrpt::slam::CSimpleMap::insert | ( | const CPose3DPDF * | in_posePDF, | |
| const CSensoryFramePtr & | in_SF | |||
| ) |
Add a new pair to the sequence, making a copy of the smart pointer (it's not made unique).
| void mrpt::slam::CSimpleMap::insert | ( | const CPose3DPDF * | in_posePDF, | |
| const CSensoryFrame & | in_SF | |||
| ) |
Add a new pair to the sequence.
The objects are copied, so original ones can be free if desired after insertion.
| CSimpleMap& mrpt::slam::CSimpleMap::operator= | ( | const CSimpleMap & | o | ) |
Copy constructor.
| void mrpt::slam::CSimpleMap::remove | ( | size_t | index | ) |
| void mrpt::slam::CSimpleMap::set | ( | size_t | index, | |
| const CPosePDFPtr & | in_posePDF, | |||
| const CSensoryFramePtr & | in_SF | |||
| ) |
Changes the i'th pair, first one is index '0'.
The referenced object is COPIED, so you can freely destroy the object passed as parameter after calling this. If one of the pointers is NULL, the corresponding contents of the current i'th pair is not modified (i.e. if you want just to modify one of the values). This version for 2D PDFs just converts the 2D PDF into 3D before calling the 3D version.
| std::exception | On index out of bounds. |
| void mrpt::slam::CSimpleMap::set | ( | size_t | index, | |
| const CPose3DPDFPtr & | in_posePDF, | |||
| const CSensoryFramePtr & | in_SF | |||
| ) |
Changes the i'th pair, first one is index '0'.
The referenced object is COPIED, so you can freely destroy the object passed as parameter after calling this. If one of the pointers is NULL, the corresponding contents of the current i'th pair is not modified (i.e. if you want just to modify one of the values).
| std::exception | On index out of bounds. |
| size_t mrpt::slam::CSimpleMap::size | ( | ) | const |
Returns the pairs count.
mrpt::utils::CLASSINIT mrpt::slam::CSimpleMap::_init_CSensFrameProbSequence [static, private] |
Definition at line 58 of file CSimpleMap.h.
Definition at line 59 of file CSimpleMap.h.
The stored data.
Definition at line 155 of file CSimpleMap.h.
| Page generated by Doxygen 1.6.1 for MRPT 0.9.0 SVN: at Mon Jun 7 06:47:58 UTC 2010 |