Class TopicDataType used to provide the DomainRTPSParticipant with the methods to serialize, deserialize and get the key of a specific data type. More...
#include <TopicDataType.hpp>
Public Member Functions | |
FASTDDS_EXPORTED_API | TopicDataType ()=default |
Constructor. | |
virtual FASTDDS_EXPORTED_API | ~TopicDataType ()=default |
Destructor. | |
virtual FASTDDS_EXPORTED_API bool | serialize (const void *const data, rtps::SerializedPayload_t &payload, eprosima::fastdds::dds::DataRepresentationId_t data_representation)=0 |
Serialize method, it should be implemented by the user, since it is abstract. | |
virtual FASTDDS_EXPORTED_API bool | deserialize (rtps::SerializedPayload_t &payload, void *data)=0 |
Deserialize method, it should be implemented by the user, since it is abstract. | |
virtual FASTDDS_EXPORTED_API uint32_t | calculate_serialized_size (const void *const data, eprosima::fastdds::dds::DataRepresentationId_t data_representation)=0 |
Calculates the serialized size of the provided data. | |
virtual FASTDDS_EXPORTED_API void * | create_data ()=0 |
Create a Data Type. | |
virtual FASTDDS_EXPORTED_API void | delete_data (void *data)=0 |
Remove a previously created object. | |
virtual FASTDDS_EXPORTED_API bool | compute_key (rtps::SerializedPayload_t &payload, rtps::InstanceHandle_t &ihandle, bool force_md5=false)=0 |
Get the key associated with the data. | |
virtual FASTDDS_EXPORTED_API bool | compute_key (const void *const data, rtps::InstanceHandle_t &ihandle, bool force_md5=false)=0 |
Get the key associated with the data. | |
FASTDDS_EXPORTED_API void | set_name (const std::string &nam) |
Set topic data type name. | |
FASTDDS_EXPORTED_API void | set_name (std::string &&nam) |
Set topic data type name. | |
FASTDDS_EXPORTED_API const std::string & | get_name () const |
Get topic data type name. | |
FASTDDS_EXPORTED_API const xtypes::TypeIdentifierPair & | type_identifiers () const |
Get the type identifiers. | |
virtual FASTDDS_EXPORTED_API bool | is_bounded () const |
Checks if the type is bounded. | |
virtual FASTDDS_EXPORTED_API bool | is_plain (DataRepresentationId_t) const |
Checks if the type is plain when using a specific encoding. | |
virtual FASTDDS_EXPORTED_API bool | construct_sample (void *memory) const |
Construct a sample on a memory location. | |
virtual FASTDDS_EXPORTED_API void | register_type_object_representation () |
Register TypeObject type representation. | |
Public Attributes | |
uint32_t | max_serialized_type_size {0} |
Maximum serialized size of the type in bytes. | |
bool | is_compute_key_provided {false} |
Indicates whether the method to obtain the key has been implemented. | |
Protected Attributes | |
xtypes::TypeIdentifierPair | type_identifiers_ |
Class TopicDataType used to provide the DomainRTPSParticipant with the methods to serialize, deserialize and get the key of a specific data type.
The user should created a class that inherits from this one, where Serialize and deserialize methods MUST be implemented.
|
default |
Constructor.
|
virtualdefault |
Destructor.
|
pure virtual |
Calculates the serialized size of the provided data.
[in] | data | Pointer to data. |
[in] | data_representation | Representation that should be used for calculating the serialized size. |
Implemented in DynamicPubSubType, StringSTypeDefnPubSubType, StringLTypeDefnPubSubType, PlainCollectionHeaderPubSubType, PlainSequenceSElemDefnPubSubType, PlainSequenceLElemDefnPubSubType, PlainArraySElemDefnPubSubType, PlainArrayLElemDefnPubSubType, PlainMapSTypeDefnPubSubType, PlainMapLTypeDefnPubSubType, StronglyConnectedComponentIdPubSubType, ExtendedTypeDefnPubSubType, DummyPubSubType, ExtendedAnnotationParameterValuePubSubType, AppliedAnnotationParameterPubSubType, AppliedAnnotationPubSubType, AppliedVerbatimAnnotationPubSubType, AppliedBuiltinMemberAnnotationsPubSubType, CommonStructMemberPubSubType, CompleteMemberDetailPubSubType, MinimalMemberDetailPubSubType, CompleteStructMemberPubSubType, MinimalStructMemberPubSubType, AppliedBuiltinTypeAnnotationsPubSubType, MinimalTypeDetailPubSubType, CompleteTypeDetailPubSubType, CompleteStructHeaderPubSubType, MinimalStructHeaderPubSubType, CompleteStructTypePubSubType, MinimalStructTypePubSubType, CommonUnionMemberPubSubType, CompleteUnionMemberPubSubType, MinimalUnionMemberPubSubType, CommonDiscriminatorMemberPubSubType, CompleteDiscriminatorMemberPubSubType, MinimalDiscriminatorMemberPubSubType, CompleteUnionHeaderPubSubType, MinimalUnionHeaderPubSubType, CompleteUnionTypePubSubType, MinimalUnionTypePubSubType, CommonAnnotationParameterPubSubType, CompleteAnnotationParameterPubSubType, MinimalAnnotationParameterPubSubType, CompleteAnnotationHeaderPubSubType, MinimalAnnotationHeaderPubSubType, CompleteAnnotationTypePubSubType, MinimalAnnotationTypePubSubType, CommonAliasBodyPubSubType, CompleteAliasBodyPubSubType, MinimalAliasBodyPubSubType, CompleteAliasHeaderPubSubType, MinimalAliasHeaderPubSubType, CompleteAliasTypePubSubType, MinimalAliasTypePubSubType, CompleteElementDetailPubSubType, CommonCollectionElementPubSubType, CompleteCollectionElementPubSubType, MinimalCollectionElementPubSubType, CommonCollectionHeaderPubSubType, CompleteCollectionHeaderPubSubType, MinimalCollectionHeaderPubSubType, CompleteSequenceTypePubSubType, MinimalSequenceTypePubSubType, CommonArrayHeaderPubSubType, CompleteArrayHeaderPubSubType, MinimalArrayHeaderPubSubType, CompleteArrayTypePubSubType, MinimalArrayTypePubSubType, CompleteMapTypePubSubType, MinimalMapTypePubSubType, CommonEnumeratedLiteralPubSubType, CompleteEnumeratedLiteralPubSubType, MinimalEnumeratedLiteralPubSubType, CommonEnumeratedHeaderPubSubType, CompleteEnumeratedHeaderPubSubType, MinimalEnumeratedHeaderPubSubType, CompleteEnumeratedTypePubSubType, MinimalEnumeratedTypePubSubType, CommonBitflagPubSubType, CompleteBitflagPubSubType, MinimalBitflagPubSubType, CommonBitmaskHeaderPubSubType, CompleteBitmaskTypePubSubType, MinimalBitmaskTypePubSubType, CommonBitfieldPubSubType, CompleteBitfieldPubSubType, MinimalBitfieldPubSubType, CompleteBitsetHeaderPubSubType, MinimalBitsetHeaderPubSubType, CompleteBitsetTypePubSubType, MinimalBitsetTypePubSubType, CompleteExtendedTypePubSubType, MinimalExtendedTypePubSubType, TypeIdentifierTypeObjectPairPubSubType, TypeIdentifierPairPubSubType, TypeIdentfierWithSizePubSubType, TypeIdentifierWithDependenciesPubSubType, and TypeInformationPubSubType.
|
pure virtual |
Get the key associated with the data.
[in] | data | Pointer to the data. |
[out] | ihandle | Pointer to the Handle. |
[in] | force_md5 | Force MD5 checking. |
Implemented in DynamicPubSubType, StringSTypeDefnPubSubType, StringLTypeDefnPubSubType, PlainCollectionHeaderPubSubType, PlainSequenceSElemDefnPubSubType, PlainSequenceLElemDefnPubSubType, PlainArraySElemDefnPubSubType, PlainArrayLElemDefnPubSubType, PlainMapSTypeDefnPubSubType, PlainMapLTypeDefnPubSubType, StronglyConnectedComponentIdPubSubType, ExtendedTypeDefnPubSubType, DummyPubSubType, ExtendedAnnotationParameterValuePubSubType, AppliedAnnotationParameterPubSubType, AppliedAnnotationPubSubType, AppliedVerbatimAnnotationPubSubType, AppliedBuiltinMemberAnnotationsPubSubType, CommonStructMemberPubSubType, CompleteMemberDetailPubSubType, MinimalMemberDetailPubSubType, CompleteStructMemberPubSubType, MinimalStructMemberPubSubType, AppliedBuiltinTypeAnnotationsPubSubType, MinimalTypeDetailPubSubType, CompleteTypeDetailPubSubType, CompleteStructHeaderPubSubType, MinimalStructHeaderPubSubType, CompleteStructTypePubSubType, MinimalStructTypePubSubType, CommonUnionMemberPubSubType, CompleteUnionMemberPubSubType, MinimalUnionMemberPubSubType, CommonDiscriminatorMemberPubSubType, CompleteDiscriminatorMemberPubSubType, MinimalDiscriminatorMemberPubSubType, CompleteUnionHeaderPubSubType, MinimalUnionHeaderPubSubType, CompleteUnionTypePubSubType, MinimalUnionTypePubSubType, CommonAnnotationParameterPubSubType, CompleteAnnotationParameterPubSubType, MinimalAnnotationParameterPubSubType, CompleteAnnotationHeaderPubSubType, MinimalAnnotationHeaderPubSubType, CompleteAnnotationTypePubSubType, MinimalAnnotationTypePubSubType, CommonAliasBodyPubSubType, CompleteAliasBodyPubSubType, MinimalAliasBodyPubSubType, CompleteAliasHeaderPubSubType, MinimalAliasHeaderPubSubType, CompleteAliasTypePubSubType, MinimalAliasTypePubSubType, CompleteElementDetailPubSubType, CommonCollectionElementPubSubType, CompleteCollectionElementPubSubType, MinimalCollectionElementPubSubType, CommonCollectionHeaderPubSubType, CompleteCollectionHeaderPubSubType, MinimalCollectionHeaderPubSubType, CompleteSequenceTypePubSubType, MinimalSequenceTypePubSubType, CommonArrayHeaderPubSubType, CompleteArrayHeaderPubSubType, MinimalArrayHeaderPubSubType, CompleteArrayTypePubSubType, MinimalArrayTypePubSubType, CompleteMapTypePubSubType, MinimalMapTypePubSubType, CommonEnumeratedLiteralPubSubType, CompleteEnumeratedLiteralPubSubType, MinimalEnumeratedLiteralPubSubType, CommonEnumeratedHeaderPubSubType, CompleteEnumeratedHeaderPubSubType, MinimalEnumeratedHeaderPubSubType, CompleteEnumeratedTypePubSubType, MinimalEnumeratedTypePubSubType, CommonBitflagPubSubType, CompleteBitflagPubSubType, MinimalBitflagPubSubType, CommonBitmaskHeaderPubSubType, CompleteBitmaskTypePubSubType, MinimalBitmaskTypePubSubType, CommonBitfieldPubSubType, CompleteBitfieldPubSubType, MinimalBitfieldPubSubType, CompleteBitsetHeaderPubSubType, MinimalBitsetHeaderPubSubType, CompleteBitsetTypePubSubType, MinimalBitsetTypePubSubType, CompleteExtendedTypePubSubType, MinimalExtendedTypePubSubType, TypeIdentifierTypeObjectPairPubSubType, TypeIdentifierPairPubSubType, TypeIdentfierWithSizePubSubType, TypeIdentifierWithDependenciesPubSubType, and TypeInformationPubSubType.
|
pure virtual |
Get the key associated with the data.
[in] | payload | Pointer to the payload containing the data. |
[out] | ihandle | Pointer to the Handle. |
[in] | force_md5 | Force MD5 checking. |
Implemented in DynamicPubSubType, StringSTypeDefnPubSubType, StringLTypeDefnPubSubType, PlainCollectionHeaderPubSubType, PlainSequenceSElemDefnPubSubType, PlainSequenceLElemDefnPubSubType, PlainArraySElemDefnPubSubType, PlainArrayLElemDefnPubSubType, PlainMapSTypeDefnPubSubType, PlainMapLTypeDefnPubSubType, StronglyConnectedComponentIdPubSubType, ExtendedTypeDefnPubSubType, DummyPubSubType, ExtendedAnnotationParameterValuePubSubType, AppliedAnnotationParameterPubSubType, AppliedAnnotationPubSubType, AppliedVerbatimAnnotationPubSubType, AppliedBuiltinMemberAnnotationsPubSubType, CommonStructMemberPubSubType, CompleteMemberDetailPubSubType, MinimalMemberDetailPubSubType, CompleteStructMemberPubSubType, MinimalStructMemberPubSubType, AppliedBuiltinTypeAnnotationsPubSubType, MinimalTypeDetailPubSubType, CompleteTypeDetailPubSubType, CompleteStructHeaderPubSubType, MinimalStructHeaderPubSubType, CompleteStructTypePubSubType, MinimalStructTypePubSubType, CommonUnionMemberPubSubType, CompleteUnionMemberPubSubType, MinimalUnionMemberPubSubType, CommonDiscriminatorMemberPubSubType, CompleteDiscriminatorMemberPubSubType, MinimalDiscriminatorMemberPubSubType, CompleteUnionHeaderPubSubType, MinimalUnionHeaderPubSubType, CompleteUnionTypePubSubType, MinimalUnionTypePubSubType, CommonAnnotationParameterPubSubType, CompleteAnnotationParameterPubSubType, MinimalAnnotationParameterPubSubType, CompleteAnnotationHeaderPubSubType, MinimalAnnotationHeaderPubSubType, CompleteAnnotationTypePubSubType, MinimalAnnotationTypePubSubType, CommonAliasBodyPubSubType, CompleteAliasBodyPubSubType, MinimalAliasBodyPubSubType, CompleteAliasHeaderPubSubType, MinimalAliasHeaderPubSubType, CompleteAliasTypePubSubType, MinimalAliasTypePubSubType, CompleteElementDetailPubSubType, CommonCollectionElementPubSubType, CompleteCollectionElementPubSubType, MinimalCollectionElementPubSubType, CommonCollectionHeaderPubSubType, CompleteCollectionHeaderPubSubType, MinimalCollectionHeaderPubSubType, CompleteSequenceTypePubSubType, MinimalSequenceTypePubSubType, CommonArrayHeaderPubSubType, CompleteArrayHeaderPubSubType, MinimalArrayHeaderPubSubType, CompleteArrayTypePubSubType, MinimalArrayTypePubSubType, CompleteMapTypePubSubType, MinimalMapTypePubSubType, CommonEnumeratedLiteralPubSubType, CompleteEnumeratedLiteralPubSubType, MinimalEnumeratedLiteralPubSubType, CommonEnumeratedHeaderPubSubType, CompleteEnumeratedHeaderPubSubType, MinimalEnumeratedHeaderPubSubType, CompleteEnumeratedTypePubSubType, MinimalEnumeratedTypePubSubType, CommonBitflagPubSubType, CompleteBitflagPubSubType, MinimalBitflagPubSubType, CommonBitmaskHeaderPubSubType, CompleteBitmaskTypePubSubType, MinimalBitmaskTypePubSubType, CommonBitfieldPubSubType, CompleteBitfieldPubSubType, MinimalBitfieldPubSubType, CompleteBitsetHeaderPubSubType, MinimalBitsetHeaderPubSubType, CompleteBitsetTypePubSubType, MinimalBitsetTypePubSubType, CompleteExtendedTypePubSubType, MinimalExtendedTypePubSubType, TypeIdentifierTypeObjectPairPubSubType, TypeIdentifierPairPubSubType, TypeIdentfierWithSizePubSubType, TypeIdentifierWithDependenciesPubSubType, and TypeInformationPubSubType.
|
inlinevirtual |
Construct a sample on a memory location.
memory | Pointer to the memory location where the sample should be constructed. |
|
pure virtual |
Create a Data Type.
Implemented in DynamicPubSubType, StringSTypeDefnPubSubType, StringLTypeDefnPubSubType, PlainCollectionHeaderPubSubType, PlainSequenceSElemDefnPubSubType, PlainSequenceLElemDefnPubSubType, PlainArraySElemDefnPubSubType, PlainArrayLElemDefnPubSubType, PlainMapSTypeDefnPubSubType, PlainMapLTypeDefnPubSubType, StronglyConnectedComponentIdPubSubType, ExtendedTypeDefnPubSubType, DummyPubSubType, ExtendedAnnotationParameterValuePubSubType, AppliedAnnotationParameterPubSubType, AppliedAnnotationPubSubType, AppliedVerbatimAnnotationPubSubType, AppliedBuiltinMemberAnnotationsPubSubType, CommonStructMemberPubSubType, CompleteMemberDetailPubSubType, MinimalMemberDetailPubSubType, CompleteStructMemberPubSubType, MinimalStructMemberPubSubType, AppliedBuiltinTypeAnnotationsPubSubType, MinimalTypeDetailPubSubType, CompleteTypeDetailPubSubType, CompleteStructHeaderPubSubType, MinimalStructHeaderPubSubType, CompleteStructTypePubSubType, MinimalStructTypePubSubType, CommonUnionMemberPubSubType, CompleteUnionMemberPubSubType, MinimalUnionMemberPubSubType, CommonDiscriminatorMemberPubSubType, CompleteDiscriminatorMemberPubSubType, MinimalDiscriminatorMemberPubSubType, CompleteUnionHeaderPubSubType, MinimalUnionHeaderPubSubType, CompleteUnionTypePubSubType, MinimalUnionTypePubSubType, CommonAnnotationParameterPubSubType, CompleteAnnotationParameterPubSubType, MinimalAnnotationParameterPubSubType, CompleteAnnotationHeaderPubSubType, MinimalAnnotationHeaderPubSubType, CompleteAnnotationTypePubSubType, MinimalAnnotationTypePubSubType, CommonAliasBodyPubSubType, CompleteAliasBodyPubSubType, MinimalAliasBodyPubSubType, CompleteAliasHeaderPubSubType, MinimalAliasHeaderPubSubType, CompleteAliasTypePubSubType, MinimalAliasTypePubSubType, CompleteElementDetailPubSubType, CommonCollectionElementPubSubType, CompleteCollectionElementPubSubType, MinimalCollectionElementPubSubType, CommonCollectionHeaderPubSubType, CompleteCollectionHeaderPubSubType, MinimalCollectionHeaderPubSubType, CompleteSequenceTypePubSubType, MinimalSequenceTypePubSubType, CommonArrayHeaderPubSubType, CompleteArrayHeaderPubSubType, MinimalArrayHeaderPubSubType, CompleteArrayTypePubSubType, MinimalArrayTypePubSubType, CompleteMapTypePubSubType, MinimalMapTypePubSubType, CommonEnumeratedLiteralPubSubType, CompleteEnumeratedLiteralPubSubType, MinimalEnumeratedLiteralPubSubType, CommonEnumeratedHeaderPubSubType, CompleteEnumeratedHeaderPubSubType, MinimalEnumeratedHeaderPubSubType, CompleteEnumeratedTypePubSubType, MinimalEnumeratedTypePubSubType, CommonBitflagPubSubType, CompleteBitflagPubSubType, MinimalBitflagPubSubType, CommonBitmaskHeaderPubSubType, CompleteBitmaskTypePubSubType, MinimalBitmaskTypePubSubType, CommonBitfieldPubSubType, CompleteBitfieldPubSubType, MinimalBitfieldPubSubType, CompleteBitsetHeaderPubSubType, MinimalBitsetHeaderPubSubType, CompleteBitsetTypePubSubType, MinimalBitsetTypePubSubType, CompleteExtendedTypePubSubType, MinimalExtendedTypePubSubType, TypeIdentifierTypeObjectPairPubSubType, TypeIdentifierPairPubSubType, TypeIdentfierWithSizePubSubType, TypeIdentifierWithDependenciesPubSubType, and TypeInformationPubSubType.
|
pure virtual |
Remove a previously created object.
data | Pointer to the created Data. |
Implemented in DynamicPubSubType, StringSTypeDefnPubSubType, StringLTypeDefnPubSubType, PlainCollectionHeaderPubSubType, PlainSequenceSElemDefnPubSubType, PlainSequenceLElemDefnPubSubType, PlainArraySElemDefnPubSubType, PlainArrayLElemDefnPubSubType, PlainMapSTypeDefnPubSubType, PlainMapLTypeDefnPubSubType, StronglyConnectedComponentIdPubSubType, ExtendedTypeDefnPubSubType, DummyPubSubType, ExtendedAnnotationParameterValuePubSubType, AppliedAnnotationParameterPubSubType, AppliedAnnotationPubSubType, AppliedVerbatimAnnotationPubSubType, AppliedBuiltinMemberAnnotationsPubSubType, CommonStructMemberPubSubType, CompleteMemberDetailPubSubType, MinimalMemberDetailPubSubType, CompleteStructMemberPubSubType, MinimalStructMemberPubSubType, AppliedBuiltinTypeAnnotationsPubSubType, MinimalTypeDetailPubSubType, CompleteTypeDetailPubSubType, CompleteStructHeaderPubSubType, MinimalStructHeaderPubSubType, CompleteStructTypePubSubType, MinimalStructTypePubSubType, CommonUnionMemberPubSubType, CompleteUnionMemberPubSubType, MinimalUnionMemberPubSubType, CommonDiscriminatorMemberPubSubType, CompleteDiscriminatorMemberPubSubType, MinimalDiscriminatorMemberPubSubType, CompleteUnionHeaderPubSubType, MinimalUnionHeaderPubSubType, CompleteUnionTypePubSubType, MinimalUnionTypePubSubType, CommonAnnotationParameterPubSubType, CompleteAnnotationParameterPubSubType, MinimalAnnotationParameterPubSubType, CompleteAnnotationHeaderPubSubType, MinimalAnnotationHeaderPubSubType, CompleteAnnotationTypePubSubType, MinimalAnnotationTypePubSubType, CommonAliasBodyPubSubType, CompleteAliasBodyPubSubType, MinimalAliasBodyPubSubType, CompleteAliasHeaderPubSubType, MinimalAliasHeaderPubSubType, CompleteAliasTypePubSubType, MinimalAliasTypePubSubType, CompleteElementDetailPubSubType, CommonCollectionElementPubSubType, CompleteCollectionElementPubSubType, MinimalCollectionElementPubSubType, CommonCollectionHeaderPubSubType, CompleteCollectionHeaderPubSubType, MinimalCollectionHeaderPubSubType, CompleteSequenceTypePubSubType, MinimalSequenceTypePubSubType, CommonArrayHeaderPubSubType, CompleteArrayHeaderPubSubType, MinimalArrayHeaderPubSubType, CompleteArrayTypePubSubType, MinimalArrayTypePubSubType, CompleteMapTypePubSubType, MinimalMapTypePubSubType, CommonEnumeratedLiteralPubSubType, CompleteEnumeratedLiteralPubSubType, MinimalEnumeratedLiteralPubSubType, CommonEnumeratedHeaderPubSubType, CompleteEnumeratedHeaderPubSubType, MinimalEnumeratedHeaderPubSubType, CompleteEnumeratedTypePubSubType, MinimalEnumeratedTypePubSubType, CommonBitflagPubSubType, CompleteBitflagPubSubType, MinimalBitflagPubSubType, CommonBitmaskHeaderPubSubType, CompleteBitmaskTypePubSubType, MinimalBitmaskTypePubSubType, CommonBitfieldPubSubType, CompleteBitfieldPubSubType, MinimalBitfieldPubSubType, CompleteBitsetHeaderPubSubType, MinimalBitsetHeaderPubSubType, CompleteBitsetTypePubSubType, MinimalBitsetTypePubSubType, CompleteExtendedTypePubSubType, MinimalExtendedTypePubSubType, TypeIdentifierTypeObjectPairPubSubType, TypeIdentifierPairPubSubType, TypeIdentfierWithSizePubSubType, TypeIdentifierWithDependenciesPubSubType, and TypeInformationPubSubType.
|
pure virtual |
Deserialize method, it should be implemented by the user, since it is abstract.
[in] | payload | Pointer to the payload |
[out] | data | Pointer to the data |
Implemented in DynamicPubSubType, StringSTypeDefnPubSubType, StringLTypeDefnPubSubType, PlainCollectionHeaderPubSubType, PlainSequenceSElemDefnPubSubType, PlainSequenceLElemDefnPubSubType, PlainArraySElemDefnPubSubType, PlainArrayLElemDefnPubSubType, PlainMapSTypeDefnPubSubType, PlainMapLTypeDefnPubSubType, StronglyConnectedComponentIdPubSubType, ExtendedTypeDefnPubSubType, DummyPubSubType, ExtendedAnnotationParameterValuePubSubType, AppliedAnnotationParameterPubSubType, AppliedAnnotationPubSubType, AppliedVerbatimAnnotationPubSubType, AppliedBuiltinMemberAnnotationsPubSubType, CommonStructMemberPubSubType, CompleteMemberDetailPubSubType, MinimalMemberDetailPubSubType, CompleteStructMemberPubSubType, MinimalStructMemberPubSubType, AppliedBuiltinTypeAnnotationsPubSubType, MinimalTypeDetailPubSubType, CompleteTypeDetailPubSubType, CompleteStructHeaderPubSubType, MinimalStructHeaderPubSubType, CompleteStructTypePubSubType, MinimalStructTypePubSubType, CommonUnionMemberPubSubType, CompleteUnionMemberPubSubType, MinimalUnionMemberPubSubType, CommonDiscriminatorMemberPubSubType, CompleteDiscriminatorMemberPubSubType, MinimalDiscriminatorMemberPubSubType, CompleteUnionHeaderPubSubType, MinimalUnionHeaderPubSubType, CompleteUnionTypePubSubType, MinimalUnionTypePubSubType, CommonAnnotationParameterPubSubType, CompleteAnnotationParameterPubSubType, MinimalAnnotationParameterPubSubType, CompleteAnnotationHeaderPubSubType, MinimalAnnotationHeaderPubSubType, CompleteAnnotationTypePubSubType, MinimalAnnotationTypePubSubType, CommonAliasBodyPubSubType, CompleteAliasBodyPubSubType, MinimalAliasBodyPubSubType, CompleteAliasHeaderPubSubType, MinimalAliasHeaderPubSubType, CompleteAliasTypePubSubType, MinimalAliasTypePubSubType, CompleteElementDetailPubSubType, CommonCollectionElementPubSubType, CompleteCollectionElementPubSubType, MinimalCollectionElementPubSubType, CommonCollectionHeaderPubSubType, CompleteCollectionHeaderPubSubType, MinimalCollectionHeaderPubSubType, CompleteSequenceTypePubSubType, MinimalSequenceTypePubSubType, CommonArrayHeaderPubSubType, CompleteArrayHeaderPubSubType, MinimalArrayHeaderPubSubType, CompleteArrayTypePubSubType, MinimalArrayTypePubSubType, CompleteMapTypePubSubType, MinimalMapTypePubSubType, CommonEnumeratedLiteralPubSubType, CompleteEnumeratedLiteralPubSubType, MinimalEnumeratedLiteralPubSubType, CommonEnumeratedHeaderPubSubType, CompleteEnumeratedHeaderPubSubType, MinimalEnumeratedHeaderPubSubType, CompleteEnumeratedTypePubSubType, MinimalEnumeratedTypePubSubType, CommonBitflagPubSubType, CompleteBitflagPubSubType, MinimalBitflagPubSubType, CommonBitmaskHeaderPubSubType, CompleteBitmaskTypePubSubType, MinimalBitmaskTypePubSubType, CommonBitfieldPubSubType, CompleteBitfieldPubSubType, MinimalBitfieldPubSubType, CompleteBitsetHeaderPubSubType, MinimalBitsetHeaderPubSubType, CompleteBitsetTypePubSubType, MinimalBitsetTypePubSubType, CompleteExtendedTypePubSubType, MinimalExtendedTypePubSubType, TypeIdentifierTypeObjectPairPubSubType, TypeIdentifierPairPubSubType, TypeIdentfierWithSizePubSubType, TypeIdentifierWithDependenciesPubSubType, and TypeInformationPubSubType.
|
inline |
Get topic data type name.
|
inlinevirtual |
Checks if the type is bounded.
|
inlinevirtual |
Checks if the type is plain when using a specific encoding.
|
inlinevirtual |
Register TypeObject type representation.
Reimplemented in DynamicPubSubType, StringSTypeDefnPubSubType, StringLTypeDefnPubSubType, PlainCollectionHeaderPubSubType, PlainSequenceSElemDefnPubSubType, PlainSequenceLElemDefnPubSubType, PlainArraySElemDefnPubSubType, PlainArrayLElemDefnPubSubType, PlainMapSTypeDefnPubSubType, PlainMapLTypeDefnPubSubType, StronglyConnectedComponentIdPubSubType, ExtendedTypeDefnPubSubType, DummyPubSubType, ExtendedAnnotationParameterValuePubSubType, AppliedAnnotationParameterPubSubType, AppliedAnnotationPubSubType, AppliedVerbatimAnnotationPubSubType, AppliedBuiltinMemberAnnotationsPubSubType, CommonStructMemberPubSubType, CompleteMemberDetailPubSubType, MinimalMemberDetailPubSubType, CompleteStructMemberPubSubType, MinimalStructMemberPubSubType, AppliedBuiltinTypeAnnotationsPubSubType, MinimalTypeDetailPubSubType, CompleteTypeDetailPubSubType, CompleteStructHeaderPubSubType, MinimalStructHeaderPubSubType, CompleteStructTypePubSubType, MinimalStructTypePubSubType, CommonUnionMemberPubSubType, CompleteUnionMemberPubSubType, MinimalUnionMemberPubSubType, CommonDiscriminatorMemberPubSubType, CompleteDiscriminatorMemberPubSubType, MinimalDiscriminatorMemberPubSubType, CompleteUnionHeaderPubSubType, MinimalUnionHeaderPubSubType, CompleteUnionTypePubSubType, MinimalUnionTypePubSubType, CommonAnnotationParameterPubSubType, CompleteAnnotationParameterPubSubType, MinimalAnnotationParameterPubSubType, CompleteAnnotationHeaderPubSubType, MinimalAnnotationHeaderPubSubType, CompleteAnnotationTypePubSubType, MinimalAnnotationTypePubSubType, CommonAliasBodyPubSubType, CompleteAliasBodyPubSubType, MinimalAliasBodyPubSubType, CompleteAliasHeaderPubSubType, MinimalAliasHeaderPubSubType, CompleteAliasTypePubSubType, MinimalAliasTypePubSubType, CompleteElementDetailPubSubType, CommonCollectionElementPubSubType, CompleteCollectionElementPubSubType, MinimalCollectionElementPubSubType, CommonCollectionHeaderPubSubType, CompleteCollectionHeaderPubSubType, MinimalCollectionHeaderPubSubType, CompleteSequenceTypePubSubType, MinimalSequenceTypePubSubType, CommonArrayHeaderPubSubType, CompleteArrayHeaderPubSubType, MinimalArrayHeaderPubSubType, CompleteArrayTypePubSubType, MinimalArrayTypePubSubType, CompleteMapTypePubSubType, MinimalMapTypePubSubType, CommonEnumeratedLiteralPubSubType, CompleteEnumeratedLiteralPubSubType, MinimalEnumeratedLiteralPubSubType, CommonEnumeratedHeaderPubSubType, CompleteEnumeratedHeaderPubSubType, MinimalEnumeratedHeaderPubSubType, CompleteEnumeratedTypePubSubType, MinimalEnumeratedTypePubSubType, CommonBitflagPubSubType, CompleteBitflagPubSubType, MinimalBitflagPubSubType, CommonBitmaskHeaderPubSubType, CompleteBitmaskTypePubSubType, MinimalBitmaskTypePubSubType, CommonBitfieldPubSubType, CompleteBitfieldPubSubType, MinimalBitfieldPubSubType, CompleteBitsetHeaderPubSubType, MinimalBitsetHeaderPubSubType, CompleteBitsetTypePubSubType, MinimalBitsetTypePubSubType, CompleteExtendedTypePubSubType, MinimalExtendedTypePubSubType, TypeIdentifierTypeObjectPairPubSubType, TypeIdentifierPairPubSubType, TypeIdentfierWithSizePubSubType, TypeIdentifierWithDependenciesPubSubType, and TypeInformationPubSubType.
|
pure virtual |
Serialize method, it should be implemented by the user, since it is abstract.
If not implemented, this method will call the serialize method in which the topic data representation is not considered. It is VERY IMPORTANT that the user sets the SerializedPayload length correctly.
[in] | data | Pointer to the data |
[out] | payload | Pointer to the payload |
[in] | data_representation | Representation that should be used to encode the data into the payload. |
Implemented in StringSTypeDefnPubSubType, StringLTypeDefnPubSubType, PlainCollectionHeaderPubSubType, PlainSequenceSElemDefnPubSubType, PlainSequenceLElemDefnPubSubType, PlainArraySElemDefnPubSubType, PlainArrayLElemDefnPubSubType, PlainMapSTypeDefnPubSubType, PlainMapLTypeDefnPubSubType, StronglyConnectedComponentIdPubSubType, ExtendedTypeDefnPubSubType, DummyPubSubType, ExtendedAnnotationParameterValuePubSubType, AppliedAnnotationParameterPubSubType, AppliedAnnotationPubSubType, AppliedVerbatimAnnotationPubSubType, AppliedBuiltinMemberAnnotationsPubSubType, CommonStructMemberPubSubType, CompleteMemberDetailPubSubType, MinimalMemberDetailPubSubType, CompleteStructMemberPubSubType, MinimalStructMemberPubSubType, AppliedBuiltinTypeAnnotationsPubSubType, MinimalTypeDetailPubSubType, CompleteTypeDetailPubSubType, CompleteStructHeaderPubSubType, MinimalStructHeaderPubSubType, CompleteStructTypePubSubType, MinimalStructTypePubSubType, CommonUnionMemberPubSubType, CompleteUnionMemberPubSubType, MinimalUnionMemberPubSubType, CommonDiscriminatorMemberPubSubType, CompleteDiscriminatorMemberPubSubType, MinimalDiscriminatorMemberPubSubType, CompleteUnionHeaderPubSubType, MinimalUnionHeaderPubSubType, CompleteUnionTypePubSubType, MinimalUnionTypePubSubType, CommonAnnotationParameterPubSubType, CompleteAnnotationParameterPubSubType, MinimalAnnotationParameterPubSubType, CompleteAnnotationHeaderPubSubType, MinimalAnnotationHeaderPubSubType, CompleteAnnotationTypePubSubType, MinimalAnnotationTypePubSubType, CommonAliasBodyPubSubType, CompleteAliasBodyPubSubType, MinimalAliasBodyPubSubType, CompleteAliasHeaderPubSubType, MinimalAliasHeaderPubSubType, CompleteAliasTypePubSubType, MinimalAliasTypePubSubType, CompleteElementDetailPubSubType, CommonCollectionElementPubSubType, CompleteCollectionElementPubSubType, MinimalCollectionElementPubSubType, CommonCollectionHeaderPubSubType, CompleteCollectionHeaderPubSubType, MinimalCollectionHeaderPubSubType, CompleteSequenceTypePubSubType, MinimalSequenceTypePubSubType, CommonArrayHeaderPubSubType, CompleteArrayHeaderPubSubType, MinimalArrayHeaderPubSubType, CompleteArrayTypePubSubType, MinimalArrayTypePubSubType, CompleteMapTypePubSubType, MinimalMapTypePubSubType, CommonEnumeratedLiteralPubSubType, CompleteEnumeratedLiteralPubSubType, MinimalEnumeratedLiteralPubSubType, CommonEnumeratedHeaderPubSubType, CompleteEnumeratedHeaderPubSubType, MinimalEnumeratedHeaderPubSubType, CompleteEnumeratedTypePubSubType, MinimalEnumeratedTypePubSubType, CommonBitflagPubSubType, CompleteBitflagPubSubType, MinimalBitflagPubSubType, CommonBitmaskHeaderPubSubType, CompleteBitmaskTypePubSubType, MinimalBitmaskTypePubSubType, CommonBitfieldPubSubType, CompleteBitfieldPubSubType, MinimalBitfieldPubSubType, CompleteBitsetHeaderPubSubType, MinimalBitsetHeaderPubSubType, CompleteBitsetTypePubSubType, MinimalBitsetTypePubSubType, CompleteExtendedTypePubSubType, MinimalExtendedTypePubSubType, TypeIdentifierTypeObjectPairPubSubType, TypeIdentifierPairPubSubType, TypeIdentfierWithSizePubSubType, TypeIdentifierWithDependenciesPubSubType, TypeInformationPubSubType, and DynamicPubSubType.
|
inline |
Set topic data type name.
nam | Topic data type name |
|
inline |
Set topic data type name.
nam | Topic data type name |
|
inline |
Get the type identifiers.
bool is_compute_key_provided {false} |
Indicates whether the method to obtain the key has been implemented.
uint32_t max_serialized_type_size {0} |
Maximum serialized size of the type in bytes.
If the type has unbounded fields, and therefore cannot have a maximum size, use 0.
|
protected |