core/com.nokia.carbide.cpp.doc.user/html/reference/indexer.html
author fturovic <frank.turovich@nokia.com>
Fri, 13 Aug 2010 15:06:59 -0500
changeset 1828 bcf84b8ee3f9
parent 1658 2a5c0df13bad
child 2131 ff0156b93599
permissions -rw-r--r--
replaced carbide portal with carbide.c++ portal
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1532
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     2
<title>Indexer</title>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     3
<link rel="StyleSheet" href="../../book.css" type="text/css"/>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     4
</head>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     5
   <body>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     6
<h2>Indexer</h2>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     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>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     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.
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
     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>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    10
   <p>The indexer runs on a background thread and reacts to resource change events such as:</p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    11
   <ul>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    12
     <li>C/C++ project creation/deletion</li>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    13
     <li>Source files creation/deletion</li>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    14
     <li>File imports</li>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    15
     <li> Source file content changes</li>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    16
   </ul>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    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>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    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>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    19
   <p align="center" class="Image"><img src="images/pref_indexer.png" alt="Indexer preference panel" width="680" height="775"></p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    20
   <p align="left" class="figure">Figure 1 - C/C++ Indexer  in Preferences</p>
1658
2a5c0df13bad renamed files for consistency in naming
fturovic <frank.turovich@nokia.com>
parents: 1532
diff changeset
    21
   <p align="left" class="Image">The project  indexer is accessed by selecting a project in the <a href="view_proj_explorer.htm">Project Explorer</a> or <a href="view_sym_proj_nav.htm">Symbian Project Navigator</a> view and selecting <b>Project &gt; Properties &gt; C/C++ General &gt; Indexer</b> (figure 2).</p>
1532
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    22
   <p align="center" class="Image"><img src="images/pref_indexer_properties.png" alt="Indexer properties panel" width="680" height="628"></p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    23
   <p align="left" class="figure">Figure 2 - Indexer panel in  Properties for project_name</p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    24
   <table cellpadding="2" cellspacing="0"
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    25
border="0">
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    26
	 <tr valign="top"><th width="221" class="Cell">Name</th><th width="558" class="Cell">Function</th></tr>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    27
         <tr valign="top">
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    28
           <td class="Cell"><b>Select indexer </b></td>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    29
           <td class="Cell"><p>Dropdown list of available index options.</p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    30
             <ul>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    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>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    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>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    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>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    34
           </ul></td>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    35
        </tr>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    36
         <tr valign="top">
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    37
           <td class="Cell"><b>Apply indexer to all projects now </b></td>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    38
           <td class="Cell">Select this option to apply the Fast C/C++ Indexer option to all projects in your current workspace. </td>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    39
        </tr>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    40
         <tr valign="top">
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    41
           <td class="Cell"><b>Rebuild the index when changing to a different build configuration </b></td>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    42
           <td class="Cell">Select this option to rescan and index the source files for the current project when you change the active build configuration. The index will be built based on the active build configuration. All macros and header files used to build the index will be taken from the active build configuration.</td>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    43
         </tr>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    44
         <tr valign="top">
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    45
           <td class="Cell"><p><b>Build the index only for the build configuration specified in the project's indexer settings</b></p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    46
           <p>&nbsp;</p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    47
           <p><b>Build the index only for the specified build configuration </b></p></td>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    48
           <td class="Cell"><p>The indexer will only be run for the build configuration specified in the Indexer panel in the project's property settings. All macros and header files used to build the index will be taken from the specified configuration.</p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    49
           <p>&nbsp;</p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    50
           <p class="note"><b>NOTE</b> This option appears in the project properties indexer panel. A dropdown list is provided to select a build configuration for the currently selected project.</p></td>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    51
         </tr>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    52
   </table>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    53
	 <p>&nbsp;</p>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    54
	 <h5>Related concepts</h5>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    55
	 <ul>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    56
       <li><a href="../concepts/build_configurations.htm">Active Build Configuration</a></li>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    57
  </ul>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    58
	 <h5>Related tasks     </h5>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    59
	 <ul><li><a href="../tasks/projects/prj_set_build_tgt.htm">Setting Active Build Configurations</a></li>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    60
       <li><a href="../tasks/projects/prj_debug_config.htm">Creating Launch Configurations</a></li>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    61
	   <li><a href="../tasks/projects/prj_new_build_config.htm">Creating Build Configurations</a></li>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    62
	 </ul>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    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>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    64
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    65
   </body>
d9c69c1b932e remove old images and add new one with revised pages
fturovic <frank.turovich@nokia.com>
parents: 1248
diff changeset
    66
   </html>
0
fb279309251b DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    67