core/com.nokia.carbide.cpp.doc.user/html/reference/indexer.html
changeset 1248 d4fee22b8cbb
parent 0 fb279309251b
child 1532 d9c69c1b932e
equal deleted inserted replaced
1246:36533332ead4 1248:d4fee22b8cbb
     2 <title>Indexer</title>
     2 <title>Indexer</title>
     3 <link rel="StyleSheet" href="../../book.css" type="text/css"/>
     3 <link rel="StyleSheet" href="../../book.css" type="text/css"/>
     4 </head>
     4 </head>
     5    <body>
     5    <body>
     6 <h2>Indexer</h2>
     6 <h2>Indexer</h2>
     7 <p>The C/C++ indexer uses the parser to create a database of your source and header files that provides the basis for C/C++ search, navigation features and content assist. The goal of indexing is to record all named elements in a project's source code and store them with their related data. The indexer parses each source file in your project and updates related indexes. By indexing your files with the indexer, useful features such as code completion and fast file search can be used. It is also possible to specify different indexer settings for each project in your workspace.</p>
     7 <p>The C/C++ <b>Indexer</b> uses the parser to create a database of  source and header files that provide the basis for C/C++ search, navigation features and content assist. The goal of indexing is to record all named elements in a project's source code and store them with their related data. The indexer parses each source file in your project and updates related indexes. By indexing your files with the indexer, useful features such as code completion and fast file search can be used. It is also possible to specify different indexer settings for each project in your workspace.</p>
     8    <p>If you choose to perform the Full C/C++ Indexer option the indexer will consume the CPU for some time, but you will gain more benefit from the process after it completes.
     8    <p>If you choose to perform the <b>Full C/C++ Indexer </b>option the indexer will consume the CPU for some time, but you will gain more benefit from the process after it completes.
     9     However, if you do not require the benefits of indexing your project, select the No Indexer option to speed up the process of building your project.</p>
     9     However, if you do not require the benefits of indexing your project, select the <b>No Indexer</b> option to speed up the process of building your project.</p>
    10    <p>The indexer runs on a background thread and reacts to resource change events such as:</p>
    10    <p>The indexer runs on a background thread and reacts to resource change events such as:</p>
    11    <ul>
    11    <ul>
    12      <li>C/C++ project creation/deletion</li>
    12      <li>C/C++ project creation/deletion</li>
    13      <li>Source files creation/deletion</li>
    13      <li>Source files creation/deletion</li>
    14      <li>File imports</li>
    14      <li>File imports</li>
    15      <li> Source file content changes</li>
    15      <li> Source file content changes</li>
    16    </ul>
    16    </ul>
    17    <p>The Preferences Indexer can be accessed by selecting Window &gt; Preferences then expanding the C/C++ group and selecting Indexer (figure 1). The Project Properties Indexer can be accessed by selecting a project in the C/C++ Projects or Symbian Project Navigator view and selecting Project &gt; Properties, then select C/C++ Indexer (figure 2).</p>
    17    <p>The global <b>Indexer</b> is accessed by selecting <b>Window &gt; Preferences &gt; C/C++ &gt; Indexer</b> (figure 1). The sections outlined in red appear as part of the project level indexer.</p>
    18    <p class="note"><b>NOTE</b> You can also rebuild a project's index by selecting a project, right-click to display the context menu and select <b>Rebuild Index</b>. </p>
    18    <p class="note"><b>NOTE</b> You can also rebuild a project's index by selecting a project, then right-click  and select the <b>Rebuild Index</b> menu item. </p>
    19    <p align="center" class="Image"><img src="images/indexer.png" width="663" height="439" /></p>
    19    <p align="center" class="Image"><img src="images/indexer.png" width="627" height="704" /></p>
    20    <p align="left" class="figure">Figure 1 - Indexer Window in Preferences Panels</p>
    20    <p align="left" class="figure">Figure 1 - Indexer Window in Preferences Panels</p>
    21    <p align="left" class="Image">&nbsp;</p>
    21    <p align="left" class="Image">The project  indexer is accessed by selecting a project in the Project Explorer or Symbian Project Navigator view and selecting <b>Project &gt; Properties &gt; C/C++ General &gt; Indexer</b> (figure 2).</p>
    22    <p align="center" class="Image"><img src="images/indexer_prop.png" width="616" height="392" /></p>
    22    <p align="center" class="Image"><img src="images/indexer_prop.png" width="682" height="579" /></p>
    23    <p align="left" class="figure">Figure 2 - Indexer Window in Project Properties</p>
    23    <p align="left" class="figure">Figure 2 - Indexer Window in Project Properties </p>
    24    <p align="left" class="Image">&nbsp; </p>
       
    25    <table cellpadding="2" cellspacing="0"
    24    <table cellpadding="2" cellspacing="0"
    26 border="0">
    25 border="0">
    27 	 <tr valign="top"><th width="221" class="Cell">Name</th><th width="558" class="Cell">Function</th></tr>
    26 	 <tr valign="top"><th width="221" class="Cell">Name</th><th width="558" class="Cell">Function</th></tr>
    28          <tr valign="top">
    27          <tr valign="top">
    29            <td class="Cell"><b>Available indexers </b></td>
    28            <td class="Cell"><b>Select indexer </b></td>
    30            <td class="Cell"><p>Dropdown list of available index options.</p>
    29            <td class="Cell"><p>Dropdown list of available index options.</p>
    31              <ul>
    30              <ul>
    32                <li>No Indexer - Project source files will not be indexed, therefore search features will not work accurately and code completion will not be available.</li>
       
    33                <li>Fast C/C++ Indexer - Source files will be indexed and eat up a lot of CPU time and memory during the first generation of the indexer. This can take some time depending on the size of your project. Afterwards the indexer will only reindex the relevant parts you changed in your code and not the whole source tree.</li>
    31                <li>Fast C/C++ Indexer - Source files will be indexed and eat up a lot of CPU time and memory during the first generation of the indexer. This can take some time depending on the size of your project. Afterwards the indexer will only reindex the relevant parts you changed in your code and not the whole source tree.</li>
    34                <li>Full C/C++ Indexer - Performs a complete parse of all source files and takes up the most amount of time to complete.</li>
    32                <li>Full C/C++ Indexer - Performs a complete parse of all source files and takes up the most amount of time to complete.</li>
       
    33                <li>No Indexer - Project source files are not indexed, therefore search features will not work accurately and code completion will not be available.</li>
    35            </ul></td>
    34            </ul></td>
    36         </tr>
    35         </tr>
    37          <tr valign="top">
    36          <tr valign="top">
    38            <td class="Cell"><b>Apply indexer to all projects now </b></td>
    37            <td class="Cell"><b>Apply indexer to all projects now </b></td>
    39            <td class="Cell">Select this option to apply the Fast C/C++ Indexer option to all projects in your current workspace. </td>
    38            <td class="Cell">Select this option to apply the Fast C/C++ Indexer option to all projects in your current workspace. </td>
    59 	 <h5>Related tasks     </h5>
    58 	 <h5>Related tasks     </h5>
    60 	 <ul><li><a href="../tasks/projects/prj_set_build_tgt.htm">Setting Active Build Configurations</a></li>
    59 	 <ul><li><a href="../tasks/projects/prj_set_build_tgt.htm">Setting Active Build Configurations</a></li>
    61        <li><a href="../tasks/projects/prj_debug_config.htm">Creating Launch Configurations</a></li>
    60        <li><a href="../tasks/projects/prj_debug_config.htm">Creating Launch Configurations</a></li>
    62 	   <li><a href="../tasks/projects/prj_new_build_config.htm">Creating Build Configurations</a></li>
    61 	   <li><a href="../tasks/projects/prj_new_build_config.htm">Creating Build Configurations</a></li>
    63 	 </ul>
    62 	 </ul>
    64 <div id="footer">Copyright &copy; 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. <br>License: <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a></div>
    63 <div id="footer">Copyright &copy; 2010 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. <br>License: <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a></div>
    65 
    64 
    66    </body>
    65    </body>
    67    </html>
    66    </html>
    68    
    67