class SerTestNS::Foo
Overview
Note the short class name: stripped of its namespace it is exactly 3 chars, which keeps the hand-crafted pre-MRPT-0.5.5 stream headers in the tests readable.
#include </home/jlblanco/mrpt/modules/mrpt_serialization/tests/serialization_test_types.h> class Foo: public mrpt::serialization::CSerializable { public: // typedefs typedef std::shared_ptr<SerTestNS ::Foo> Ptr; typedef std::shared_ptr<const SerTestNS ::Foo> ConstPtr; typedef std::unique_ptr<SerTestNS ::Foo> UniquePtr; typedef std::unique_ptr<const SerTestNS ::Foo> ConstUniquePtr; // fields static constexpr const char* className = "SerTestNS" "::" "Foo"; uint32_t m_value {0}; // methods static constexpr auto getClassName(); static const mrpt::rtti::TRuntimeClassId& GetRuntimeClassIdStatic(); static std::shared_ptr<CObject> CreateObject(); template <typename... Args> static Ptr Create(Args&&... args); template <typename Alloc, typename... Args> static Ptr CreateAlloc( const Alloc& alloc, Args&&... args ); template <typename... Args> static UniquePtr CreateUnique(Args&&... args); virtual const mrpt::rtti::TRuntimeClassId* GetRuntimeClass() const; virtual mrpt::rtti::CObject* clone() const; };
Inherited Members
public: // typedefs typedef std::shared_ptr<CSerializable> Ptr; typedef std::shared_ptr<const CSerializable> ConstPtr; // methods virtual const mrpt::rtti::TRuntimeClassId* GetRuntimeClass() const; virtual const mrpt::rtti::TRuntimeClassId* GetRuntimeClass() const; static const mrpt::rtti::TRuntimeClassId& GetRuntimeClassIdStatic();
Typedefs
typedef std::shared_ptr<SerTestNS ::Foo> Ptr
A type for the associated smart pointer.
Methods
virtual const mrpt::rtti::TRuntimeClassId* GetRuntimeClass() const
Returns information about the class of an object in runtime.
virtual mrpt::rtti::CObject* clone() const
Returns a deep copy (clone) of the object, indepently of its class.