40 m_posesObsPairs( o.m_posesObsPairs )
54 if (
this == &o)
return *
this;
97 CPose3DPDFPtr &out_posePDF,
98 CSensoryFramePtr &out_SF )
const
128 const CPose3DPDFPtr &in_posePDF,
129 const CSensoryFramePtr & in_SF )
147 const CPosePDFPtr &in_posePDF,
148 const CSensoryFramePtr &in_SF )
155 if (in_posePDF)
m_posesObsPairs[
index].first = CPose3DPDFPtr( CPose3DPDF::createFrom2D( *in_posePDF ) );
183 const CPose3DPDFPtr &in_posePDF,
184 const CSensoryFramePtr &in_SF )
191 pair.first = in_posePDF;
253 const CPosePDFPtr &in_posePDF,
254 const CSensoryFramePtr &in_SF )
256 insert( CPose3DPDFPtr( CPose3DPDF::createFrom2D( *in_posePDF ) ) ,in_SF);
303 CPosePDFPtr aux2Dpose;
305 m_posesObsPairs[i].first = CPose3DPDFPtr( CPose3DPDF::createFrom2D( *aux2Dpose ) );
321 it->first->changeCoordinatesReference(newOrigin);
#define IMPLEMENTS_SERIALIZABLE(class_name, base, NameSpace)
This must be inserted in all CSerializable classes implementation files.
This class stores a sequence of <Probabilistic Pose,SensoryFrame> pairs, thus a "metric map" can be t...
bool loadFromFile(const std::string &filName)
Load the contents of this object from a .simplemap binary file (possibly compressed with gzip)
void insert(const mrpt::poses::CPose3DPDF *in_posePDF, const mrpt::obs::CSensoryFrame &in_SF)
Add a new pair to the sequence.
void clear()
Remove all stored pairs.
void set(size_t index, const mrpt::poses::CPose3DPDFPtr &in_posePDF, const mrpt::obs::CSensoryFramePtr &in_SF)
Changes the i'th pair, first one is index '0'.
void changeCoordinatesOrigin(const mrpt::poses::CPose3D &newOrigin)
Change the coordinate origin of all stored poses, for consistency with future new poses to enter in t...
std::pair< mrpt::poses::CPose3DPDFPtr, mrpt::obs::CSensoryFramePtr > TPosePDFSensFramePair
TPosePDFSensFramePairList m_posesObsPairs
The stored data.
virtual ~CSimpleMap()
Destructor:
bool saveToFile(const std::string &filName) const
Save this object to a .simplemap binary file (compressed with gzip)
void remove(size_t index)
Deletes the i'th pair, first one is index '0'.
void get(size_t index, mrpt::poses::CPose3DPDFPtr &out_posePDF, mrpt::obs::CSensoryFramePtr &out_SF) const
Access to the i'th pair, first one is index '0'.
void readFromStream(mrpt::utils::CStream &in, int version)
Introduces a pure virtual method responsible for loading from a CStream This can not be used directly...
void writeToStream(mrpt::utils::CStream &out, int *getVersion) const
Introduces a pure virtual method responsible for writing to a CStream.
size_t size() const
Returns the count of pairs (pose,sensory data)
bool empty() const
Returns size()!=0.
CSimpleMap & operator=(const CSimpleMap &o)
Copy.
Declares a class for storing a "sensory frame", a set of "observations" taken by the robot approximat...
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
Declares a class that represents a Probability Density Function (PDF) of a 3D pose (6D actually).
Declares a class that represents a probability density function (pdf) of a 2D pose (x,...
virtual CObject * duplicate() const =0
Returns a copy of the object, indepently of its class.
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...
GLsizei const GLchar ** string
#define CFileGZOutputStream
Saves data to a file and transparently compress the data using the given compression level.
#define MRPT_THROW_UNKNOWN_SERIALIZATION_VERSION(__V)
For use in CSerializable implementations.
#define THROW_EXCEPTION(msg)
This namespace contains representation of robot actions and observations.
Classes for 2D/3D geometry representation, both of single values and probability density distribution...
Classes for serialization, sockets, ini-file manipulation, streams, list of properties-values,...
unsigned __int32 uint32_t