# cxxClass module

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

## Description

The <cxxClass> topic type contains elements necessary to show the name of the class, the short description of the class, the class syntax, and the class 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 cxxClass module.

The cxxClass topic contains the following elements:

- cxxClass
  The <cxxClass> element provides the name of the C++ API class, all the elements necessary to describe the members that are introduced by the class declaration, and the members inherited from the direct base class.
- cxxClassAbstract
  The <cxxClassAbstract> element contains optional abstract information.
- cxxClassAccessSpecifier
  The <cxxClassAccessSpecifier> element describes the level of access the class allows.
- cxxClassAPIItemLocation
  The <cxxClassAPIItemLocation> element is defined within <cxxClassDefinition>. <cxxClassAPIItemLocation> specifies the location of the API.
- cxxClassBaseClass
  The <cxxClassBaseClass> element declares inheritance from a base class in a class derivation.
- cxxClassBaseStruct
  The <cxxClassBaseStruct> element declares inheritance from a base struct in a class derivation.
- cxxClassBaseUnion
  The <cxxClassBaseUnion> element declares inheritance from a base union in a class derivation.
- cxxClassDeclarationFile
  The <cxxClassDeclarationFile> element is defined within <cxxClassAPIItemLocation>. <cxxClassDeclarationFile> specifies the file in which the API declaration is present.
- cxxClassDeclarationFileLine
  The <cxxClassDeclarationFileLine> element is defined within <cxxClassAPIItemLocation>. <cxxClassDeclarationFileLine> specifies the line on which the API is declared
- cxxClassDefinition
  The <cxxClassDefinition> element is defined within <cxxClassDetail>. <cxxClassDefinition> represents the C++ class declaration.
- cxxClassDefinitionFile
  The <cxxClassDefinitionFile> element is defined within <cxxClassAPIItemLocation>. <cxxClassDefinitionFile> specifies the file in which the API definition is present.
- cxxClassDefinitionFileLineEnd
  The <cxxClassDefinitionFileLineEnd> element specifies the end of the class definition.
- cxxClassDefinitionFileLineStart
  The <cxxClassDefinitionFileLineStart> element specifies the beginning of the class definition.
- cxxClassDerivation
  The <cxxClassDerivation> element specifies a class derivation.
- cxxClassDerivationAccessSpecifier
  The <cxxClassDerivationAccessSpecifier> element indicates the access specifier used when a class inherits from another class.
- cxxClassDerivations
  The <cxxClassDerivations> element specifies a list of class derivations for a class.
- cxxClassDerivationVirtual
  The <cxxClassDerivationVirtual> element indicates if inheritance is declared as virtual.
- cxxClassDetail
  The <cxxClassDetail> element provides detailed information about the structure and behaviors of the C++ class.
- cxxClassEnumerationInherited
  The <cxxClassEnumerationInherited> element within <cxxClassInheritsDetail> provides the name of an enumeration inherited by a class.
- cxxClassEnumeratorInherited
  The <cxxClassEnumeratorInherited> element within <cxxClassInheritsDetail> provides the name of an enumerator inherited by a class.
- cxxClassFunctionInherited
  The <cxxClassFunctionInherited> element within <cxxClassInheritsDetail> provides the name of a function inherited by a class.
- cxxClassInherits
  The <cxxClassInherits> element is inside the <cxxClass> element. It contains <cxxClassInheritsDetail> which gives details of inherited members of the C++ class
- cxxClassInheritsDetail
  The <cxxClassInheritsDetail> element provides details about the inherited members of a C++ class.
- cxxClassNested
  The <cxxClassNested> element within <cxxClass> contains <cxxClassNestedDetail> which gives details of nested members of this C++ class
- cxxClassNestedClass
  The <cxxClassNestedClass> element within <cxxClassNestedDetail> provides the name of a nested class.
- cxxClassNestedDetail
  The <cxxClassNestedDetail> element provides details about the nested members of a C++ class.
- cxxClassNestedStruct
  The <cxxClassNestedStruct> element within <cxxClassNestedDetail> provides the name of a nested struct.
- cxxClassNestedUnion
  The <cxxClassNestedUnion> element within <cxxClassNestedDetail> provides the name of a nested union.
- cxxClassTemplateParameter
  The <cxxClassTemplateParameter> element describes a class parameter.
- cxxClassTemplateParameters
  The <cxxClassTemplateParameters> element contains a set of class parameters.
- cxxClassTemplateParameterType
  The <cxxClassTemplateParameterType> element specifies the parameter type.
- cxxClassVariableInherited
  The <cxxClassVariableInherited> element within <cxxClassInheritsDetail> provides the name of a variable inherited by a class.

Parent topic: C++ topic types