Main MRPT website > C++ reference for MRPT 1.5.6
Modules | Functions
Non-CStream serialization functions (in #include <mrpt/utils/CSerializable.h>)

Detailed Description

Collaboration diagram for Non-CStream serialization functions (in #include <mrpt/utils/CSerializable.h>):

Modules

 Serialization functions for ZMQ (v3 or above) (in #include <mrpt/utils/serialization_zmq.h>)
 

Functions

std::string BASE_IMPEXP mrpt::utils::ObjectToString (const CSerializable *o)
 Used to pass MRPT objects into a CORBA-like object (strings). More...
 
void BASE_IMPEXP mrpt::utils::StringToObject (const std::string &str, CSerializablePtr &obj)
 Used to pass CORBA-like objects (strings) into a MRPT object. More...
 
void BASE_IMPEXP mrpt::utils::ObjectToOctetVector (const CSerializable *o, vector_byte &out_vector)
 Converts (serializes) an MRPT object into an array of bytes. More...
 
void BASE_IMPEXP mrpt::utils::OctetVectorToObject (const vector_byte &in_data, CSerializablePtr &obj)
 Converts back (de-serializes) a sequence of binary data into a MRPT object, without prior information about the object's class. More...
 
void BASE_IMPEXP mrpt::utils::ObjectToRawString (const CSerializable *o, std::string &out_str)
 Converts (serializes) an MRPT object into an array of bytes within a std::string, without codifying to avoid NULL characters. More...
 
void BASE_IMPEXP mrpt::utils::RawStringToObject (const std::string &in_str, CSerializablePtr &obj)
 Converts back (de-serializes) a sequence of binary data within a std::string into a MRPT object, without prior information about the object's class. More...
 

Function Documentation

void mrpt::utils::ObjectToOctetVector ( const CSerializable o,
vector_byte out_vector 
)

Converts (serializes) an MRPT object into an array of bytes.

Parameters
oThe object to be serialized.
out_vectorThe vector which at return will contain the data. Size will be set automatically.
See Also
OctetVectorToObject, ObjectToString

Definition at line 158 of file CSerializable.cpp.

References mrpt::system::os::fprintf(), mrpt::utils::CMemoryStream::getRawBufferData(), mrpt::utils::CMemoryStream::getTotalBytesCount(), mrpt::system::os::memcpy(), and mrpt::utils::CStream::WriteObject().

Referenced by TEST().

void mrpt::utils::ObjectToRawString ( const CSerializable o,
std::string out_str 
)

Converts (serializes) an MRPT object into an array of bytes within a std::string, without codifying to avoid NULL characters.

This is therefore more efficient than ObjectToString

Parameters
oThe object to be serialized.
out_vectorThe string which at return will contain the data. Size will be set automatically.
See Also
RawStringToObject, ObjectToOctetVector

Definition at line 218 of file CSerializable.cpp.

References mrpt::system::os::fprintf(), mrpt::utils::CMemoryStream::getRawBufferData(), mrpt::utils::CMemoryStream::getTotalBytesCount(), mrpt::system::os::memcpy(), and mrpt::utils::CStream::WriteObject().

std::string mrpt::utils::ObjectToString ( const CSerializable o)

Used to pass MRPT objects into a CORBA-like object (strings).

See doc about "Integration with BABEL".

Parameters
oThe object to be serialized.
Returns
The string containing the binay version of object.
See Also
StringToObject, Integration with BABEL

Definition at line 31 of file CSerializable.cpp.

References mrpt::system::os::fprintf(), mrpt::utils::CMemoryStream::getRawBufferData(), mrpt::utils::CMemoryStream::getTotalBytesCount(), mrpt::system::os::memcpy(), mrpt::utils::CStream::WriteBuffer(), and mrpt::utils::CStream::WriteObject().

Referenced by mrpt::hmtslam::CHierarchicalMHMap::dumpAsXMLfile().

void mrpt::utils::OctetVectorToObject ( const vector_byte in_data,
CSerializablePtr &  obj 
)

Converts back (de-serializes) a sequence of binary data into a MRPT object, without prior information about the object's class.

Parameters
in_dataThe serialized input data representing the object.
objThe newly created object will be stored in this smart pointer.
Exceptions
NoneOn any internal exception, this function returns a NULL pointer.
See Also
ObjectToOctetVector, StringToObject

Definition at line 189 of file CSerializable.cpp.

References mrpt::utils::CMemoryStream::assignMemoryNotOwn(), mrpt::system::os::fprintf(), and mrpt::utils::CStream::ReadObject().

Referenced by TEST().

void mrpt::utils::RawStringToObject ( const std::string in_str,
CSerializablePtr &  obj 
)

Converts back (de-serializes) a sequence of binary data within a std::string into a MRPT object, without prior information about the object's class.

Parameters
in_dataThe serialized input data representing the object.
objThe newly created object will be stored in this smart pointer.
Exceptions
NoneOn any internal exception, this function returns a NULL pointer.
See Also
ObjectToRawString

Definition at line 249 of file CSerializable.cpp.

References mrpt::utils::CMemoryStream::assignMemoryNotOwn(), mrpt::system::os::fprintf(), and mrpt::utils::CStream::ReadObject().

void mrpt::utils::StringToObject ( const std::string str,
CSerializablePtr &  obj 
)

Used to pass CORBA-like objects (strings) into a MRPT object.

Parameters
strAn string generated with ObjectToString
objA currently empty pointer, where a pointer to the newly created object will be stored.
Exceptions
NoneOn any internal exception, this function returns NULL.
See Also
ObjectToString, Integration with BABEL

Definition at line 100 of file CSerializable.cpp.

References mrpt::utils::CMemoryStream::getRawBufferData(), mrpt::utils::CMemoryStream::getTotalBytesCount(), MRPT_END, MRPT_START, mrpt::utils::CStream::ReadObject(), mrpt::utils::CMemoryStream::Seek(), mrpt::utils::CStream::sFromBeginning, and mrpt::utils::CStream::WriteBuffer().




Page generated by Doxygen 1.8.6 for MRPT 1.5.6 Git: 4c65e84 Tue Apr 24 08:18:17 2018 +0200 at mar abr 24 08:26:17 CEST 2018