DITA-OT_CXX_Plugin/cxxapiref/doc/cxxClass/cxxClass.dita
changeset 4 468f4c8d3d5b
equal deleted inserted replaced
3:d8fccb2cd802 4:468f4c8d3d5b
       
     1 <?xml version="1.0" encoding="UTF-8"?>
       
     2 <!--
       
     3 Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
       
     4 All rights reserved.		
       
     5 		-->
       
     6 <!DOCTYPE reference PUBLIC "-//OASIS//DTD DITA Reference//EN" "reference.dtd">
       
     7 <reference xml:lang="en-us" outputclass="element" id="cxxClass">
       
     8     <title>cxxClass</title>
       
     9     <shortdesc>The &lt;cxxClass&gt; element provides the name of the C++ API
       
    10 class, all the elements necessary to describe the members that are introduced
       
    11 by the class declaration, and the members inherited from the direct base class.</shortdesc>
       
    12     <refbody>
       
    13         <section>
       
    14             <title>Description</title>
       
    15             <p>The &lt;cxxClass&gt; element requires
       
    16 an ID attribute as an anchor point; this ID must always be specified. The
       
    17 ID attribute is referenced by the <i>conref</i> attribute and internal applications
       
    18 that refer to the  &lt;cxxClass&gt; element content. The elements &lt;apiName&gt; 
       
    19 and &lt;cxxClassDetail&gt; are required for this top-level container. </p>
       
    20         </section>
       
    21         <example><title>Example</title>
       
    22         <codeblock>&lt;cxxClass id=&quot;class_c_array_fix_flat_3_01_t_uid_01_4&quot;&gt;
       
    23 	&lt;apiName&gt;CArrayFixFlat&amp;lt; TUid &amp;gt;&lt;/apiName&gt;
       
    24 	&lt;cxxClassDetail&gt;
       
    25 		&lt;cxxClassDefinition&gt;
       
    26 			&lt;cxxClassAccessSpecifier value=&quot;public&quot;/&gt;
       
    27 			&lt;cxxClassDerivations&gt;
       
    28 				&lt;cxxClassDerivation&gt;
       
    29 					&lt;cxxClassDerivationAccessSpecifier value=&quot;public&quot;/&gt;
       
    30 					&lt;cxxClassBaseClass href=&quot;class_c_array_fix.xml#class_c_array_fix&quot;&gt;CArrayFix&amp;lt; TUid &amp;gt;&lt;/cxxClassBaseClass&gt;
       
    31 				&lt;/cxxClassDerivation&gt;
       
    32 			&lt;/cxxClassDerivations&gt;
       
    33 			&lt;cxxClassAPIItemLocation&gt;
       
    34 				&lt;cxxClassDeclarationFile name=&quot;filePath&quot; value=&quot;C:/src/include/e32base.h&quot;/&gt;
       
    35 				&lt;cxxClassDeclarationFileLine name=&quot;lineNumber&quot; value=&quot;531&quot;/&gt;
       
    36 				&lt;cxxClassDefinitionFile name=&quot;filePath&quot; value=&quot;C:/src/include/e32base.h&quot;/&gt;
       
    37 				&lt;cxxClassDefinitionFileLineStart name=&quot;lineNumber&quot; value=&quot;521&quot;/&gt;
       
    38 				&lt;cxxClassDefinitionFileLineEnd name=&quot;lineNumber&quot; value=&quot;536&quot;/&gt;
       
    39 			&lt;/cxxClassAPIItemLocation&gt;
       
    40 		&lt;/cxxClassDefinition&gt;
       
    41 		&lt;apiDesc&gt;
       
    42 			&lt;p&gt;Template specialisation base class for arrays of &lt;xref href=&quot;class_t_uid.xml#class_t_uid&quot;&gt;TUid&lt;/xref&gt; types implemented in a flat dynamic buffer.&lt;/p&gt;
       
    43 			&lt;p&gt;
       
    44 				&lt;xref href=&quot;class_t_uid.xml#class_t_uid&quot;&gt;TUid&lt;/xref&gt; &lt;/p&gt;
       
    45 		&lt;/apiDesc&gt;
       
    46 	&lt;/cxxClassDetail&gt;
       
    47 	&lt;cxxFunction id=&quot;class_c_array_fix_flat_3_01_t_uid_01_4_1afd277b81e961b25f35b92dbc90f8d97c&quot;&gt;
       
    48 		&lt;apiName&gt;SetReserveL&lt;/apiName&gt;
       
    49 		&lt;cxxFunctionDetail&gt;
       
    50 			&lt;cxxFunctionDefinition&gt;
       
    51 				&lt;cxxFunctionAccessSpecifier value=&quot;public&quot;/&gt;
       
    52 				&lt;cxxFunctionInline/&gt;
       
    53 				&lt;cxxFunctionDeclaredType&gt;void&lt;/cxxFunctionDeclaredType&gt;
       
    54 				&lt;cxxFunctionScopedName&gt;CArrayFixFlat&amp;lt; TUid &amp;gt;&lt;/cxxFunctionScopedName&gt;
       
    55 				&lt;cxxFunctionPrototype&gt;inline void SetReserveL(TInt aCount)&lt;/cxxFunctionPrototype&gt;
       
    56 				&lt;cxxFunctionNameLookup&gt;CArrayFixFlat&amp;lt; TUid &amp;gt;::SetReserveL(TInt)&lt;/cxxFunctionNameLookup&gt;
       
    57 				&lt;cxxFunctionParameters&gt;
       
    58 					&lt;cxxFunctionParameter&gt;
       
    59 						&lt;cxxFunctionParameterDeclaredType&gt;
       
    60 							&lt;apiRelation href=&quot;e32def_8h.xml#e32def_8h_1abb88f5378e8305d934297176fe5fa298&quot;&gt;TInt&lt;/apiRelation&gt;
       
    61 						&lt;/cxxFunctionParameterDeclaredType&gt;
       
    62 						&lt;cxxFunctionParameterDeclarationName&gt;aCount&lt;/cxxFunctionParameterDeclarationName&gt;
       
    63 						&lt;apiDefNote&gt;The total number of elements for which space is to be reserved.&lt;/apiDefNote&gt;
       
    64 					&lt;/cxxFunctionParameter&gt;
       
    65 				&lt;/cxxFunctionParameters&gt;
       
    66 				&lt;cxxFunctionAPIItemLocation&gt;
       
    67 					&lt;cxxFunctionDeclarationFile name=&quot;filePath&quot; value=&quot;C:/src/include/e32base.h&quot;/&gt;
       
    68 					&lt;cxxFunctionDeclarationFileLine name=&quot;lineNumber&quot; value=&quot;535&quot;/&gt;
       
    69 					&lt;cxxFunctionDefinitionFile name=&quot;filePath&quot; value=&quot;C:/src/master/sf/mw/classicui/animation/src/SpriteAnimationServer.cpp&quot;/&gt;
       
    70 					&lt;cxxFunctionDefinitionFileLineStart name=&quot;lineNumber&quot; value=&quot;1137&quot;/&gt;
       
    71 					&lt;cxxFunctionDefinitionFileLineEnd name=&quot;lineNumber&quot; value=&quot;1157&quot;/&gt;
       
    72 				&lt;/cxxFunctionAPIItemLocation&gt;
       
    73 			&lt;/cxxFunctionDefinition&gt;
       
    74 			&lt;apiDesc&gt;
       
    75 				&lt;p&gt;Reserves space in the array buffer.&lt;/p&gt;
       
    76 				&lt;p&gt;If necessary, the array buffer is allocated or re-allocated so that it can accommodate the specified number of &lt;xref href=&quot;class_t_uid.xml#class_t_uid&quot;&gt;TUid&lt;/xref&gt; elements.&lt;/p&gt;
       
    77 				&lt;p&gt;After a successful call to this function, elements can be added to the array and the process is guaranteed not to fail for lack of memory - provided the total number of elements does not exceed the specified number.&lt;/p&gt;
       
    78 				&lt;p&gt;This function does not increase the number of elements in the array; i.e. the member function &lt;xref href=&quot;class_c_array_fix_base.xml#class_c_array_fix_base_1ad5bc874aceea074862134dc8e4937faa&quot;&gt;CArrayFixBase::Count()&lt;/xref&gt; returns the same value both before and after a call to this function.&lt;/p&gt;
       
    79 				&lt;p&gt;
       
    80 					&lt;b&gt;panic&lt;/b&gt;
       
    81 				&lt;/p&gt;
       
    82 				&lt;p&gt;E32USER-CBase 27, if aCount is less than the current number of elements in the array. &lt;/p&gt;
       
    83 			&lt;/apiDesc&gt;
       
    84 		&lt;/cxxFunctionDetail&gt;
       
    85 	&lt;/cxxFunction&gt;    
       
    86 	&lt;cxxFunction id=&quot;class_c_array_fix_flat_3_01_t_uid_01_4_1a78b3dd428f88a9f9f693911129e9eb51&quot;&gt;
       
    87 		...
       
    88 	&lt;/cxxFunction&gt;
       
    89 	&lt;cxxFunction id=&quot;class_c_array_fix_flat_3_01_t_uid_01_4_1a3b0a085b65c307ad4937a6c7c4bb767a&quot;&gt;
       
    90 		...
       
    91 	&lt;/cxxFunction&gt;
       
    92 	&lt;cxxClassInherits&gt;
       
    93 		&lt;cxxClassInheritsDetail&gt;
       
    94 			&lt;cxxClassFunctionInherited href=&quot;class_c_array_fix.xml#class_c_array_fix_1ab18347f8849b6dfe174c57bbdccdc3a6&quot;&gt;CArrayFix&amp;lt; TUid &amp;gt;::AppendL(const TUid &amp;amp;)&lt;/cxxClassFunctionInherited&gt;
       
    95 			&lt;cxxClassFunctionInherited href=&quot;class_c_array_fix.xml#class_c_array_fix_1a98b10e4a4f97fd76a722e33afd3b8ee3&quot;&gt;CArrayFix&amp;lt; TUid &amp;gt;::AppendL(const TUid &amp;amp;,TInt)&lt;/cxxClassFunctionInherited&gt;
       
    96 			...
       
    97 		&lt;/cxxClassInheritsDetail&gt;
       
    98 	&lt;/cxxClassInherits&gt;
       
    99 &lt;/cxxClass&gt;</codeblock>
       
   100         </example>        
       
   101         <section conref="../packagedef.dita#cxxClass-reference/cxxClass-containedBy-section"/>
       
   102         <section conref="../packagedef.dita#cxxClass-reference/cxxClass-contains-section"/>
       
   103         <section conref="../packagedef.dita#cxxClass-reference/cxxClass-contentModel-section"/>
       
   104         <section conref="../packagedef.dita#cxxClass-reference/cxxClass-attList-section"/>
       
   105         <section conref="../packagedef.dita#cxxClass-reference/cxxClass-classValue-section"/>
       
   106     </refbody>
       
   107 </reference>