Integrations (PTC products, 3rd party products and code) > Code integration (Ada, ARINC 653, C, C#, C++, IDL, Java, SQL and VB) > Code Reverser pages and dialogs > C++ Code Reverser > Select model page (C++ Code Reverser)
  
Select model page (C++ Code Reverser)
This page allows you to specify the Model, the Root Object in that model and the Root Directory in your file system.
For information about reverse engineering C++ code, click here Overview of reverse engineering legacy C++ code (C++ code)
Model
Select the model you want to reverse engineer code to. By default, the active Model is selected:
To create a Model, click the New Model button, and then create a Model in the required Repository.
To select a Model, click the Select Model button, and then select the required Model.
You can select only models in repositories that are bookmarked in Model Explorer. For more information about bookmarking repositories, click here Bookmarking a database (Model Explorer)
Model Settings File
The model settings file records wizard settings you have specified for reverse engineering, such as the root object, root directory, selected files for reverse engineering, search paths and directories to include.
If the Model Settings File box is blank, you must select a previously saved model settings file or create a new one:
To create a model settings file, click the New Settings File button, and then specify a name and location for the file.
To select a model settings file, click the Select Settings File button, and then select the settings file you want to use.
If you hover the mouse pointer over the Model Settings File box, a tool tip provides the full path of model settings file.
You may want to create different model settings files for different reverse engineering scenarios.
The Save Settings on Exit check box determines whether the Model Settings File is updated on exiting the Reverser. For more information see the Save Settings on Exit Check Box section that follows.
Root Object in Modeler
Select the root object, that is, the Model, a Package or a Class. By default, the root object is the Model.
To select a root object, click the Select Package button, and then select the required Model, Package or Class. You can select the Model, any Package that has Folder mapping and is not a child of a Namespace Package, or any Class that is not nested or scoped to a Package that is a child of a Namespace Package. All child Packages of a Namespace Package and any Classes those Packages contain are not available for selection.
* 
If you move the mouse pointer over the Root Object box, a ToolTip displays the fully scoped name of the root object.
Root Directory in your File System
Select the root directory in your file system.
In the Root Directory box, type the directory path, or click the Select Directory button, and then select the required folder. The root directory is used when searching for files to reverse engineer.
Save Settings on Exit check box
Specifies that you want to update the selected model settings file on exiting the Reverser:
If you exit the Reverser through the Finish button, the settings are saved automatically.
If you exit the Reverser through the Cancel button or by closing the Reverser, you are prompted to save or not save the settings.
Project File button
If there is a dsp, vcproj or batch file (created through your make utility - not the make file) for your project, click the Project File button, and then select the dsp, vcproj or batch file. The Reverser extracts the following information from the file:
Files to reverse engineer (dsp and vcproj files only)
#defines
#includes
* 
If the dsp or vcproj file contains more than one configuration, a dialog is displayed so that you can choose the configuration to reverse engineer.
As an alternative to clicking the Project File button and selecting a dsp or vcproj file, you can drag a dsp or vcproj file to the area within the Project File button group box (not on the Project File button).
Profile DB button
If you have previously set up a Synchronizer profile when using the C++ Synchronizer that was provided with Studio version 4.1 or earlier (or when using C Synchronizer that was released with Studio version 4.2 or earlier), click the Profile DBbutton, and select the profile you previously set up. The Reverser extracts the following information from the profile:
#defines
#includes