ADTF
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
CodecFactory

Factory class for ddl codecs. More...

#include <codec_factory_legacy.h>

Public Member Functions

DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory ()
 Empty constructor.
 
DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory (const std::string &struct_name, const std::string &dd_string)
 Constructor that take a DataDefinition string for initialization.
 
DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory (const ddl::dd::StructType &struct_type, const dd::DataDefinition &dd)
 Constructor that uses an OO-DataDefinition struct for initialization.
 
DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory (const ddl::dd::StructTypeAccess &struct_type_access)
 Constructor that uses an valid struct type access for initialization.
 
DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory (const DDStructure &dd_struct)
 Constructor that uses an OO-DataDefinition struct for initialization.
 
a_util::result::Result isValid () const
 Check if the factory is in a valid state.
 
StaticDecoder makeStaticDecoderFor (const void *data, size_t data_size, DataRepresentation rep=deserialized) const
 Creates a static decoder for the given data.
 
StaticCodec makeStaticCodecFor (void *data, size_t data_size, DataRepresentation rep=deserialized) const
 Creates a static codec for the given data.
 
Decoder makeDecoderFor (const void *data, size_t data_size, DataRepresentation rep=deserialized) const
 Creates a decoder for the given data.
 
Codec makeCodecFor (void *data, size_t data_size, DataRepresentation rep=deserialized) const
 Creates a codec for the given data.
 
size_t getStaticElementCount () const
 
a_util::result::Result getStaticElement (size_t index, const StructElement *&element) const
 Access information about an element.
 
size_t getStaticBufferSize (DataRepresentation rep=deserialized) const
 

Private Attributes

std::shared_ptr< const StructLayout > _layout
 For internal use only.
 
a_util::result::Result _dummy_constructor_result
 This must stay for binary compatibility!
 

Detailed Description

Factory class for ddl codecs.

Deprecated
Use the new CodecFactory() instead.

Definition at line 36 of file codec_factory_legacy.h.

Constructor & Destructor Documentation

◆ CodecFactory() [1/5]

DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory ( )

Empty constructor.

This exists to enable uninitialized member variables of this type that are move-assigned later on.

◆ CodecFactory() [2/5]

DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory ( const std::string & struct_name,
const std::string & dd_string )

Constructor that take a DataDefinition string for initialization.

Parameters
[in]struct_nameThe name of the struct for which codecs should be generated.
[in]dd_stringThe DataDefinition description within a (xml)string.

◆ CodecFactory() [3/5]

DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory ( const ddl::dd::StructType & struct_type,
const dd::DataDefinition & dd )

Constructor that uses an OO-DataDefinition struct for initialization.

Parameters
[in]struct_typeThe struct definition.
[in]ddThe DD

◆ CodecFactory() [4/5]

DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory ( const ddl::dd::StructTypeAccess & struct_type_access)

Constructor that uses an valid struct type access for initialization.

Parameters
[in]struct_type_accessThe struct type access.

◆ CodecFactory() [5/5]

DEV_ESSENTIAL_DEPRECATED_CODEC_FACTORY CodecFactory ( const DDStructure & dd_struct)

Constructor that uses an OO-DataDefinition struct for initialization.

Parameters
[in]dd_structThe struct definition.

Member Function Documentation

◆ getStaticBufferSize()

size_t getStaticBufferSize ( DataRepresentation rep = deserialized) const
Parameters
[in]repThe data representation for which the buffer size should be returned.
Returns
The size of the structure in the requested data representation.

References ddl::deserialized.

◆ getStaticElement()

a_util::result::Result getStaticElement ( size_t index,
const StructElement *& element ) const

Access information about an element.

Parameters
[in]indexThe index of the element.
[out]elementPointer that will be updated to point to the element information.
Return values
ERR_INVALID_INDEXInvalid index.

◆ getStaticElementCount()

size_t getStaticElementCount ( ) const
Returns
The amount of static elements contained in the handled structure.

◆ isValid()

a_util::result::Result isValid ( ) const

Check if the factory is in a valid state.

Returns
Any errors during construction.

◆ makeCodecFor()

Codec makeCodecFor ( void * data,
size_t data_size,
DataRepresentation rep = deserialized ) const
inline

Creates a codec for the given data.

Parameters
[in]dataThe pointer to the raw data.
[in]data_sizeThe size of the raw data.
[in]repThe representation that the data is encoded in.
Returns
a codec.

Definition at line 130 of file codec_factory_legacy.h.

References _layout, and ddl::deserialized.

◆ makeDecoderFor()

Decoder makeDecoderFor ( const void * data,
size_t data_size,
DataRepresentation rep = deserialized ) const
inline

Creates a decoder for the given data.

Parameters
[in]dataThe pointer to the raw data.
[in]data_sizeThe size of the raw data.
[in]repThe representation that the data is encoded in.
Returns
a decoder.

Definition at line 116 of file codec_factory_legacy.h.

References _layout, and ddl::deserialized.

◆ makeStaticCodecFor()

StaticCodec makeStaticCodecFor ( void * data,
size_t data_size,
DataRepresentation rep = deserialized ) const
inline

Creates a static codec for the given data.

Parameters
[in]dataThe pointer to the raw data.
[in]data_sizeThe size of the raw data.
[in]repThe representation that the data is encoded in.
Returns
a static codec.

Definition at line 102 of file codec_factory_legacy.h.

References _layout, and ddl::deserialized.

◆ makeStaticDecoderFor()

StaticDecoder makeStaticDecoderFor ( const void * data,
size_t data_size,
DataRepresentation rep = deserialized ) const
inline

Creates a static decoder for the given data.

Parameters
[in]dataThe pointer to the raw data.
[in]data_sizeThe size of the raw data.
[in]repThe representation that the data is encoded in.
Returns
a static decoder.

Definition at line 88 of file codec_factory_legacy.h.

References _layout, and ddl::deserialized.

Member Data Documentation

◆ _dummy_constructor_result

a_util::result::Result _dummy_constructor_result
private

This must stay for binary compatibility!

Definition at line 159 of file codec_factory_legacy.h.

◆ _layout

std::shared_ptr<const StructLayout> _layout
private

For internal use only.

The std::shared_ptr is used due to binary compatibility!

Definition at line 157 of file codec_factory_legacy.h.

Referenced by makeCodecFor(), makeDecoderFor(), makeStaticCodecFor(), and makeStaticDecoderFor().