ADTF  3.15.2
FactoryElementAccess< AccessType >

A factory element access type concept template to retrieve element information from the AccessType. More...

Inheritance diagram for FactoryElementAccess< AccessType >:
[legend]

Public Types

using access_type = AccessType
 The access type (CodecFactory, Codec, Decoder, etc.)
 
using self_type = FactoryElementAccess< AccessType >
 self type
 
using element_type = FactoryElement< self_type, ChildElements< self_type > >
 element type
 

Static Public Member Functions

static element_type getElement (access_type &access, const std::string &full_element_name)
 Get a element object for the given full_element_name. More...
 
static element_type getElement (access_type &access, const CodecIndex &index)
 Get a element object for the given index. More...
 
static size_t getChildCount (access_type &access, const CodecIndex &index)
 Get the Child Count. More...
 
static std::string getFullName (access_type &access, const CodecIndex &index)
 Get the full name of the element within its main structure. More...
 
static std::string getName (access_type &access, const CodecIndex &index)
 Get the name of the element within its level structure. More...
 
static std::string getBaseName (access_type &access, const CodecIndex &index)
 Get the name of the element within its level structure. More...
 
static void resolve (access_type &access, CodecIndex &index)
 Resolves the given CodecIndex and set the layout information. More...
 

Detailed Description

template<typename AccessType>
class ddl::codec::FactoryElementAccess< AccessType >

A factory element access type concept template to retrieve element information from the AccessType.

This class is to retrieve common information of the element.

See also
FactoryElement.
Template Parameters
AccessTypeThe AccessType for the element (CodecFactory, Codec, Decoder, etc. )

Definition at line 443 of file codec_iterator.h.

Member Function Documentation

◆ getBaseName()

static std::string getBaseName ( access_type access,
const CodecIndex index 
)
inlinestatic

Get the name of the element within its level structure.

If the element is an array you get the elements base name representation : "element_name" for each array element. If the element is not an array you get the elements name representation is also the base name representation: "element_name".

Parameters
accessdefined access type.
indexThe codec index
Returns
std::string

Definition at line 521 of file codec_iterator.h.

◆ getChildCount()

static size_t getChildCount ( access_type access,
const CodecIndex index 
)
inlinestatic

Get the Child Count.

Parameters
accessdefined access type.
indexThe codec index
Returns
size_t

Definition at line 479 of file codec_iterator.h.

◆ getElement() [1/2]

static element_type getElement ( access_type access,
const CodecIndex index 
)
inlinestatic

Get a element object for the given index.

Parameters
accessdefined access type.
indexThe codec index.
Returns
element_type

Definition at line 468 of file codec_iterator.h.

◆ getElement() [2/2]

static element_type getElement ( access_type access,
const std::string &  full_element_name 
)
inlinestatic

Get a element object for the given full_element_name.

Parameters
accessdefined access type.
full_element_nameThe full name of the element in point notation (i.e. "element1.child_element[4].element_value").
Returns
element_type

Definition at line 457 of file codec_iterator.h.

◆ getFullName()

static std::string getFullName ( access_type access,
const CodecIndex index 
)
inlinestatic

Get the full name of the element within its main structure.

If the element is an array you get the elements array name representation: "main_element.element_name[0]" or main_element.element_name[1] ... etc. If the element is not an array you get the elements name representation: "main_element.element_name".

Parameters
accessdefined access type.
indexThe codec index
Returns
std::string

Definition at line 493 of file codec_iterator.h.

◆ getName()

static std::string getName ( access_type access,
const CodecIndex index 
)
inlinestatic

Get the name of the element within its level structure.

If the element is an array you get the elements array name representation: "element_name[0]" or element_name[1] ... etc. If the element is not an array you get the elements name representation: "element_name".

Parameters
accessdefined access type.
indexThe codec index
Returns
std::string

Definition at line 507 of file codec_iterator.h.

◆ resolve()

static void resolve ( access_type access,
CodecIndex index 
)
inlinestatic

Resolves the given CodecIndex and set the layout information.

Parameters
accessdefined access type.
indexThe codec index to resolve
Exceptions
throwsif not found

Definition at line 533 of file codec_iterator.h.