MRPT
1.9.9
|
#include <mrpt/rtti/CObject.h>
#include <mrpt/serialization/serialization_frwds.h>
#include <cstdint>
Go to the source code of this file.
Classes | |
class | mrpt::serialization::CSerializable |
The virtual base class which provides a unified interface for all persistent objects in MRPT. More... | |
Namespaces | |
mrpt::serialization | |
Macros | |
#define | DEFINE_SCHEMA_SERIALIZABLE() |
This declaration must be inserted in all CSerializable classes definition, within the class declaration. More... | |
#define | SCHEMA_SERIALIZE_DATATYPE_VERSION(ser_version) |
For use inside all serializeTo(CSchemeArchiveBase) methods. More... | |
#define | SCHEMA_DESERIALIZE_DATATYPE_VERSION() |
For use inside serializeFrom(CSchemeArchiveBase) methods. More... | |
#define | DEFINE_SERIALIZABLE(class_name) |
This declaration must be inserted in all CSerializable classes definition, within the class declaration. More... | |
#define | IMPLEMENTS_SERIALIZABLE_NS_PREFIX(class_name, base, NameSpace) IMPLEMENTS_MRPT_OBJECT_NS_PREFIX(class_name, base, NameSpace) |
To be added to all CSerializable-classes implementation files. More... | |
#define | IMPLEMENTS_SERIALIZABLE(class_name, base, NameSpace) IMPLEMENTS_MRPT_OBJECT(class_name, base, NameSpace) |
To be added to all CSerializable-classes implementation files. More... | |
#define | DEFINE_VIRTUAL_SERIALIZABLE(class_name) DEFINE_VIRTUAL_MRPT_OBJECT(class_name) |
This declaration must be inserted in virtual CSerializable classes definition: More... | |
#define | IMPLEMENTS_VIRTUAL_SERIALIZABLE(class_name, base_class, NS) IMPLEMENTS_VIRTUAL_MRPT_OBJECT(class_name, base_class, NS) |
This must be inserted as implementation of some required members for virtual CSerializable classes: More... | |
#define | IMPLEMENTS_VIRTUAL_SERIALIZABLE_NS_PREFIX(class_name, base_class, NS) IMPLEMENTS_VIRTUAL_MRPT_OBJECT_NS_PREFIX(class_name, base_class, NS) |
#define | DECLARE_MEX_CONVERSION |
This must be inserted if a custom conversion method for MEX API is implemented in the class. More... | |
#define | DECLARE_MEXPLUS_FROM(complete_type) |
This must be inserted if a custom conversion method for MEX API is implemented in the class. More... | |
#define | IMPLEMENTS_MEXPLUS_FROM(complete_type) |
Typedefs | |
using | mxArray = struct mxArray_tag |
Forward declaration for mxArray (avoid #including as much as possible to speed up compiling) More... | |
Functions | |
void | mrpt::serialization::ObjectToOctetVector (const CSerializable *o, std::vector< uint8_t > &out_vector) |
Converts (serializes) an MRPT object into an array of bytes. More... | |
void | mrpt::serialization::OctetVectorToObject (const std::vector< uint8_t > &in_data, CSerializable::Ptr &obj) |
Converts back (de-serializes) a sequence of binary data into a MRPT object, without prior information about the object's class. More... | |
#define DECLARE_MEX_CONVERSION |
This must be inserted if a custom conversion method for MEX API is implemented in the class.
Definition at line 193 of file CSerializable.h.
#define DECLARE_MEXPLUS_FROM | ( | complete_type | ) |
This must be inserted if a custom conversion method for MEX API is implemented in the class.
Definition at line 202 of file CSerializable.h.
#define DEFINE_SCHEMA_SERIALIZABLE | ( | ) |
This declaration must be inserted in all CSerializable classes definition, within the class declaration.
Definition at line 121 of file CSerializable.h.
#define DEFINE_SERIALIZABLE | ( | class_name | ) |
This declaration must be inserted in all CSerializable classes definition, within the class declaration.
Definition at line 152 of file CSerializable.h.
#define DEFINE_VIRTUAL_SERIALIZABLE | ( | class_name | ) | DEFINE_VIRTUAL_MRPT_OBJECT(class_name) |
This declaration must be inserted in virtual CSerializable classes definition:
Definition at line 179 of file CSerializable.h.
#define IMPLEMENTS_MEXPLUS_FROM | ( | complete_type | ) |
Definition at line 211 of file CSerializable.h.
#define IMPLEMENTS_SERIALIZABLE | ( | class_name, | |
base, | |||
NameSpace | |||
) | IMPLEMENTS_MRPT_OBJECT(class_name, base, NameSpace) |
To be added to all CSerializable-classes implementation files.
This version registers the class name with the NameSpace prefix.
Definition at line 174 of file CSerializable.h.
#define IMPLEMENTS_SERIALIZABLE_NS_PREFIX | ( | class_name, | |
base, | |||
NameSpace | |||
) | IMPLEMENTS_MRPT_OBJECT_NS_PREFIX(class_name, base, NameSpace) |
To be added to all CSerializable-classes implementation files.
This version registers the class name with the NameSpace prefix.
Definition at line 167 of file CSerializable.h.
#define IMPLEMENTS_VIRTUAL_SERIALIZABLE | ( | class_name, | |
base_class, | |||
NS | |||
) | IMPLEMENTS_VIRTUAL_MRPT_OBJECT(class_name, base_class, NS) |
This must be inserted as implementation of some required members for virtual CSerializable classes:
Definition at line 185 of file CSerializable.h.
#define IMPLEMENTS_VIRTUAL_SERIALIZABLE_NS_PREFIX | ( | class_name, | |
base_class, | |||
NS | |||
) | IMPLEMENTS_VIRTUAL_MRPT_OBJECT_NS_PREFIX(class_name, base_class, NS) |
Definition at line 188 of file CSerializable.h.
#define SCHEMA_DESERIALIZE_DATATYPE_VERSION | ( | ) |
For use inside serializeFrom(CSchemeArchiveBase) methods.
Definition at line 139 of file CSerializable.h.
Referenced by mrpt::opengl::CCylinder::serializeFrom(), and mrpt::opengl::CPointCloud::serializeFrom().
#define SCHEMA_SERIALIZE_DATATYPE_VERSION | ( | ser_version | ) |
For use inside all serializeTo(CSchemeArchiveBase) methods.
Definition at line 131 of file CSerializable.h.
Referenced by mrpt::opengl::CCylinder::serializeTo(), and mrpt::opengl::CPointCloud::serializeTo().
using mxArray = struct mxArray_tag |
Forward declaration for mxArray (avoid #including as much as possible to speed up compiling)
Definition at line 18 of file CSerializable.h.
Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 8fe78517f Sun Jul 14 19:43:28 2019 +0200 at lun oct 28 02:10:00 CET 2019 |