Data type implementation. More...
#include <DataType.h>
Public Member Functions | |
virtual Serializer | createSerializer (const DataType &type) const =0 |
Create a serializer for this data type (abstract declaration) More... | |
virtual Variant | createVariant (const DataType &type) const =0 |
Create a variant from this data type (abstract declaration) More... | |
virtual const std::string & | getIdentifier () const =0 |
Retrieve the identifier representing this data type (abstract declaration) More... | |
virtual size_t | getSize () const =0 |
Retrieve the size of the instances of this data type (abstract declaration) More... | |
virtual const std::type_info & | getTypeInfo () const |
Retrieve the type information associated with this data type. More... | |
Impl () | |
Constructor. More... | |
virtual bool | isFixedSize () const =0 |
True, if this data type represents a fixed-size data type (abstract declaration) More... | |
virtual bool | isSimple () const =0 |
True, if this data type represents a simple data type (abstract declaration) More... | |
virtual | ~Impl () |
Destructor. More... | |
Data type implementation.
Definition at line 168 of file DataType.h.
variant_topic_tools::DataType::Impl::Impl | ( | ) |
Constructor.
Definition at line 65 of file DataType.cpp.
|
virtual |
Destructor.
Reimplemented in variant_topic_tools::MessageDataType::Impl, variant_topic_tools::ArrayDataType::Impl, and variant_topic_tools::BuiltinDataType::Impl.
Definition at line 68 of file DataType.cpp.
|
pure virtual |
Create a serializer for this data type (abstract declaration)
Implemented in variant_topic_tools::MessageDataType::ImplT< T >, variant_topic_tools::MessageDataType::ImplV, variant_topic_tools::ArrayDataType::ImplT< T >, variant_topic_tools::ArrayDataType::ImplV, and variant_topic_tools::BuiltinDataType::ImplT< T >.
|
pure virtual |
Create a variant from this data type (abstract declaration)
Implemented in variant_topic_tools::MessageDataType::ImplT< T >, variant_topic_tools::MessageDataType::ImplV, variant_topic_tools::ArrayDataType::ImplT< T >, variant_topic_tools::ArrayDataType::ImplV, and variant_topic_tools::BuiltinDataType::ImplT< T >.
|
pure virtual |
Retrieve the identifier representing this data type (abstract declaration)
Implemented in variant_topic_tools::MessageDataType::ImplT< T >, variant_topic_tools::MessageDataType::ImplV, variant_topic_tools::ArrayDataType::Impl, and variant_topic_tools::BuiltinDataType::Impl.
|
pure virtual |
Retrieve the size of the instances of this data type (abstract declaration)
Implemented in variant_topic_tools::MessageDataType::ImplT< T >, variant_topic_tools::MessageDataType::ImplV, variant_topic_tools::ArrayDataType::ImplT< T >, variant_topic_tools::ArrayDataType::ImplV, and variant_topic_tools::BuiltinDataType::ImplT< T >.
|
virtual |
Retrieve the type information associated with this data type.
Reimplemented in variant_topic_tools::MessageDataType::ImplT< T >, variant_topic_tools::ArrayDataType::ImplT< T >, and variant_topic_tools::BuiltinDataType::ImplT< T >.
Definition at line 144 of file DataType.cpp.
|
pure virtual |
True, if this data type represents a fixed-size data type (abstract declaration)
Implemented in variant_topic_tools::MessageDataType::ImplT< T >, variant_topic_tools::MessageDataType::ImplV, variant_topic_tools::ArrayDataType::ImplT< T >, variant_topic_tools::ArrayDataType::ImplV, and variant_topic_tools::BuiltinDataType::ImplT< T >.
|
pure virtual |
True, if this data type represents a simple data type (abstract declaration)
Implemented in variant_topic_tools::MessageDataType::ImplT< T >, variant_topic_tools::MessageDataType::ImplV, variant_topic_tools::ArrayDataType::ImplT< T >, variant_topic_tools::ArrayDataType::ImplV, and variant_topic_tools::BuiltinDataType::ImplT< T >.