ADTF  3.18.2
cDDLComplex

Representation for a complex datatype inside a DDL specification. More...

Inheritance diagram for cDDLComplex:
[legend]

Public Member Functions

 cDDLComplex ()
 Default CTOR.
 
 cDDLComplex (const A_UTILS_NS::cString &strName, unsigned int const uiVersion, const A_UTILS_NS::cString &strComment=A_UTILS_NS::cString::Empty, cDDLAlignment::tAlignment const eAlignment=cDDLAlignment::e1, tDDLElementVec vecDDLElements=tDDLElementVec(), int const nCreationLevel=1, double fLanguageVersion=cDDLVersionHelper::GetDefaultVersion())
 CTOR. More...
 
 cDDLComplex (cDDLComplex &oStruct)
 Copy CTOR. More...
 
virtual ~cDDLComplex ()
 DTOR.
 
tResult Accept (IDDLVisitor *poVisitor)
 Acceptance method for Visitor design-pattern. More...
 
const A_UTILS_NS::cStringGetName () const
 Getter for the name of the representation object. More...
 
void SetName (const A_UTILS_NS::cString &strName)
 Setter for the name of the complex datatype. More...
 
bool IsInitialized () const
 Getter for the initialization flag. More...
 
bool IsPredefined () const
 Getter for the predefinition flag. More...
 
bool IsOverwriteable () const
 Getter for the predefinition flag. More...
 
int GetCreationLevel () const
 Getter for the creation level. More...
 
tResult Create (const A_UTILS_NS::cString &strName, unsigned int const uiVersion, const A_UTILS_NS::cString &strComment=A_UTILS_NS::cString::Empty, cDDLAlignment::tAlignment const eAlignment=cDDLAlignment::e1, tDDLElementVec vecDDLElements=tDDLElementVec(), int const nCreationLevel=1)
 Creation method to fill the object with data. More...
 
unsigned int GetVersion () const
 Getter for the version. More...
 
void SetVersion (unsigned int const uiVersion)
 Setter for the version. More...
 
double GetDDLVersion () const
 Getter for the DDL version. More...
 
tResult SetDDLVersion (double const fLanguageVersion)
 Setter for the DDL version. More...
 
void SetComment (const A_UTILS_NS::cString &strComment)
 Setter for the comment. More...
 
A_UTILS_NS::cString GetComment () const
 Getter for the comment. More...
 
void SetAlignment (cDDLAlignment::tAlignment const eAlignment)
 Setter for the alignment. More...
 
void CloneElements (tDDLElementVec vecDDLElements)
 Setter for the element vector. More...
 
void RefElements (tDDLElementVec vecDDLElements)
 Setter for the element vector. More...
 
void AddElement (cDDLElement *poElement, int nPos=-1)
 Adder for an element. More...
 
tResult RemoveElement (const A_UTILS_NS::cString &strElementName)
 removal for an element. More...
 
const tDDLElementVecGetElements () const
 Getter for the elements. More...
 
tDDLElementVecGetElements ()
 Getter for the elements. More...
 
cDDLAlignment::tAlignment GetAlignment () const
 Getter for the alignment of the complex datatype. More...
 
- Public Member Functions inherited from IDDLDataType
virtual ~IDDLDataType ()
 Virtual DTOR.
 
- Public Member Functions inherited from IDDL
virtual ~IDDL ()
 Virtual DTOR.
 

Private Attributes

double m_fLanguageVersion
 The DDL Version this structure was created in.
 
A_UTILS_NS::cString m_strName
 
unsigned int m_uiVersion
 
A_UTILS_NS::cString m_strComment
 
cDDLAlignment::tAlignment m_eAlignment
 
tDDLElementVec m_vecDDLElements
 
bool m_bInitFlag
 
int m_nLevel
 

Additional Inherited Members

- Public Types inherited from IDDL
enum  tag_MergeFlags { DDLMERGE_ForceOverwrite = 0x01 }
 Flags for Merging.
 

Detailed Description

Representation for a complex datatype inside a DDL specification.

Definition at line 34 of file ddlcomplex.h.

Constructor & Destructor Documentation

◆ cDDLComplex() [1/2]

cDDLComplex ( const A_UTILS_NS::cString strName,
unsigned int const  uiVersion,
const A_UTILS_NS::cString strComment = A_UTILS_NS::cString::Empty,
cDDLAlignment::tAlignment const  eAlignment = cDDLAlignment::e1,
tDDLElementVec  vecDDLElements = tDDLElementVec(),
int const  nCreationLevel = 1,
double  fLanguageVersion = cDDLVersionHelper::GetDefaultVersion() 
)

CTOR.

Parameters
[in]strName- Name of the data type
[in]uiVersion- Version number of the specified data type
[in]strComment- Additional comments (optional)
[in]eAlignment- Alignment value (optional)
[in]vecDDLElements- Vector of sub elements (optional)
[in]nCreationLevel- Level at creation time (optional)
[in]fLanguageVersion- language version (optional)

◆ cDDLComplex() [2/2]

cDDLComplex ( cDDLComplex oStruct)

Copy CTOR.

Parameters
[in]oStruct- Reference to complex datatype object to copy

Member Function Documentation

◆ Accept()

tResult Accept ( IDDLVisitor poVisitor)
virtual

Acceptance method for Visitor design-pattern.

Parameters
[in]poVisitor- Pointer to Visitor instance
Return values
ERR_POINTERNull-pointer committed
ERR_NOT_FOUNDRequired node not found.
ERR_NOT_INITIALIZEDThe object was not or not correctly initialized

Implements IDDL.

◆ AddElement()

void AddElement ( cDDLElement poElement,
int  nPos = -1 
)

Adder for an element.

Parameters
[in]poElement- Pointer to the element to add
[in]nPos- Position to add the element
Returns
void

◆ CloneElements()

void CloneElements ( tDDLElementVec  vecDDLElements)

Setter for the element vector.

Parameters
[in]vecDDLElements- Vector of elements
Returns
void

◆ Create()

tResult Create ( const A_UTILS_NS::cString strName,
unsigned int const  uiVersion,
const A_UTILS_NS::cString strComment = A_UTILS_NS::cString::Empty,
cDDLAlignment::tAlignment const  eAlignment = cDDLAlignment::e1,
tDDLElementVec  vecDDLElements = tDDLElementVec(),
int const  nCreationLevel = 1 
)

Creation method to fill the object with data.

Parameters
[in]strName- Name of the data type
[in]uiVersion- Version number of the specified data type
[in]strComment- Additional comments (optional)
[in]eAlignment- Alignment value (optional)
[in]vecDDLElements- Vector of sub elements (optional)
[in]nCreationLevel- Level at creation time (optional)
Return values
ERR_INVALID_ARGEmpty name committed

◆ GetAlignment()

cDDLAlignment::tAlignment GetAlignment ( ) const

Getter for the alignment of the complex datatype.

Returns
the alignment

◆ GetComment()

A_UTILS_NS::cString GetComment ( ) const

Getter for the comment.

Returns
the comment

◆ GetCreationLevel()

int GetCreationLevel ( ) const
virtual

Getter for the creation level.

Returns
the level at creation time of this representation object

Implements IDDL.

◆ GetDDLVersion()

double GetDDLVersion ( ) const

Getter for the DDL version.

Returns
the DDL version

◆ GetElements() [1/2]

tDDLElementVec& GetElements ( )

Getter for the elements.

Returns
vector of the elements

◆ GetElements() [2/2]

const tDDLElementVec& GetElements ( ) const

Getter for the elements.

Returns
vector of the elements

◆ GetName()

const A_UTILS_NS::cString& GetName ( ) const
virtual

Getter for the name of the representation object.

Returns
the name

Implements IDDL.

◆ GetVersion()

unsigned int GetVersion ( ) const

Getter for the version.

Returns
the version

◆ IsInitialized()

bool IsInitialized ( ) const
virtual

Getter for the initialization flag.

Return values
trueThe object was initialized correctly
falseThe object was not or not correctly initialized

Implements IDDL.

◆ IsOverwriteable()

bool IsOverwriteable ( ) const
virtual

Getter for the predefinition flag.

Return values
trueThe object was predefined
falseThe object was defined later

Implements IDDL.

◆ IsPredefined()

bool IsPredefined ( ) const
virtual

Getter for the predefinition flag.

Return values
trueThe object was predefined
falseThe object was defined later

Implements IDDL.

◆ RefElements()

void RefElements ( tDDLElementVec  vecDDLElements)

Setter for the element vector.

Parameters
[in]vecDDLElements- Vector of elements
Returns
void

◆ RemoveElement()

tResult RemoveElement ( const A_UTILS_NS::cString strElementName)

removal for an element.

Parameters
[in]strElementName- name of the element to remove
Return values
ERR_NOT_FOUNDif not found

◆ SetAlignment()

void SetAlignment ( cDDLAlignment::tAlignment const  eAlignment)

Setter for the alignment.

Parameters
[in]eAlignment- Alignment value
Returns
void

◆ SetComment()

void SetComment ( const A_UTILS_NS::cString strComment)

Setter for the comment.

Parameters
[in]strComment- Additional comments
Returns
void

◆ SetDDLVersion()

tResult SetDDLVersion ( double const  fLanguageVersion)

Setter for the DDL version.

Parameters
fLanguageVersionthe DDL version to set
Returns
Standard result code.
Return values
ERR_NOERROR

◆ SetName()

void SetName ( const A_UTILS_NS::cString strName)

Setter for the name of the complex datatype.

Parameters
[in]strName- Name of the complex datatype
Returns
void

◆ SetVersion()

void SetVersion ( unsigned int const  uiVersion)

Setter for the version.

Parameters
uiVersionthe version to set
Returns
void