# cxxStruct module

Defines a top-level container for all the elements necessary to describe an C++ API struct.

## Description

The <cxxStruct> topic type contains elements necessary to show the name of the struct, the short description of the struct, the struct syntax, and the struct use description. This topic type module also contains all the elements necessary to describe the component variables and functions.

To describe the component fields and methods insert cxxFunction, cxxDefine, cxxVariable, cxxEnumeration or cxxTypedef elements into the cxxStruct module.

The cxxStruct topic contains the following elements:

- cxxStruct
  The <cxxStruct> element provides the name of the C++ API struct, all the elements necessary to describe the members that are introduced by the struct declaration, and the members inherited from the direct base struct.
- cxxStructAbstract
  The <cxxStructAbstract> element contains optional abstract information.
- cxxStructAccessSpecifier
  The <cxxStructAccessSpecifier> element describes the level of access the struct allows.
- cxxStructAPIItemLocation
  The <cxxStructAPIItemLocation> element is defined within <cxxStructDefinition>. <cxxStructAPIItemLocation> specifies the location of the API.
- cxxStructBaseClass
  The <cxxStructBaseClass> element declares inheritance from a base class in a struct derivation.
- cxxStructBaseStruct
  The <cxxStructBaseStruct> element declares inheritance from a base struct in a struct derivation.
- cxxStructBaseUnion
  The <cxxStructBaseUnion> element declares inheritance from a base union in a struct derivation.
- cxxStructDeclarationFile
  The <cxxStructDeclarationFile> element is defined within <cxxStructAPIItemLocation>. <cxxStructDeclarationFile> specifies the file in which the API declaration is present.
- cxxStructDeclarationFileLine
  The <cxxStructDeclarationFileLine> element is defined within <cxxStructAPIItemLocation>. <cxxStructDeclarationFileLine> specifies the line on which the API is declared
- cxxStructDefinition
  The <cxxStructDefinition> element is defined within <cxxStructDetail>. <cxxStructDefinition> represents the C++ struct declaration.
- cxxStructDefinitionFile
  The <cxxStructDefinitionFile> element is defined within <cxxStructAPIItemLocation>. <cxxStructDefinitionFile> specifies the file in which the API definition is present.
- cxxStructDefinitionFileLineEnd
  The <cxxStructDefinitionFileLineEnd> element specifies the end of the struct definition.
- cxxStructDefinitionFileLineStart
  The <cxxStructDefinitionFileLineStart> element specifies the beginning of the struct definition.
- cxxStructDerivation
  The <cxxStructDerivation> element specifies a single struct derivation within a list of struct derivations.
- cxxStructDerivationAccessSpecifier
  The <cxxStructDerivationAccessSpecifier> element indicates the access specifier used when a struct inherits from another struct.
- cxxStructDerivations
  The <cxxStructDerivations> element specifies a list of struct derivations for a struct.
- cxxStructDerivationVirtual
  The <cxxStructDerivationVirtual> element indicates if inheritance is declared as virtual.
- cxxStructDetail
  The <cxxStructDetail> element provides detailed information about the structure and behaviors of the C++ struct.
- cxxStructEnumerationInherited
  The <cxxStructEnumerationInherited> element within <cxxStructInheritsDetail> provides the name of an enumeration inherited by a struct.
- cxxStructEnumeratorInherited
  The <cxxStructEnumeratorInherited> element within <cxxStructInheritsDetail> provides the name of an enumerator inherited by a struct
- cxxStructFunctionInherited
  The <cxxStructFunctionInherited> element within <cxxStructInheritsDetail> provides the name of a function inherited by a struct.
- cxxStructInherits
  The <cxxStructInherits> element within <cxxStruct> contains <cxxStructInheritsDetail> which gives details of inherited members of this C++ struct
- cxxStructInheritsDetail
  The <cxxStructInheritsDetail> element provides detailed information about the inherited members of the C++ struct.
- cxxStructNested
  The <cxxStructNested> element within <cxxStruct> contains <cxxStructNestedDetail> which gives details of nested members of this C++ struct
- cxxStructNestedClass
  The <cxxStructNestedClass> element within <cxxStructNestedDetail> provides the name of a class nested within a struct.
- cxxStructNestedDetail
  The <cxxStructNestedDetail> element provides details about the nested members of a C++ struct.
- cxxStructNestedStruct
  The <cxxStructNestedStruct> element within <cxxStructNestedDetail> provides the name of a struct nested in a struct.
- cxxStructNestedUnion
  The <cxxStructNestedUnion> element within <cxxStructNestedDetail> provides the name of a union nested in a struct.
- cxxStructTemplateParameter
  The <cxxStructTemplateParameter> element describes a struct parameter.
- cxxStructTemplateParameters
  The <cxxStructTemplateParameters> element contains a set of struct parameters.
- cxxStructTemplateParameterType
  The <cxxStructTemplateParameterType> element specifies the parameter type.
- cxxStructVariableInherited
  The <cxxStructVariableInherited> element within <cxxStructInheritsDetail> provides the name of variable inherited by a struct.

Parent topic: C++ topic types