Use the Input tab to specify which
include files to be analyzed in the reverse engineering process.
- None means
to analyze only the files or folders specified in the main Reverse
Engineering window; all #include statements
are ignored.
This mode contributes the
least performance drain to the reverse engineering process. Us reverse
engineering in this most limited mode only when appropriate. This
mode imports no implementation information (such as operation bodies)
or initialization of static variables, and loses needed information
such as dependencies. Keep in mind that implementation files cannot
be analyzed without first analyzing their corresponding specification
files. Note: Using None will not import the
content of .cpp or .c files.
- Only header file with the same name means
to analyze only the matched included files. In other words, the corresponding
specification file for the analyzed implementation file of the same
name. This method is known as logical files mode.
For example, for the implementation file named MyClass.cpp,
the reverse engineering utility will analyze only the include file
named MyClass.h. All other included files in the
list of files you selected are not analyzed. This high-performance
mode imports full information about analyzed classes, but might lose
dependencies through separated parts of a project. This mode is designed
for reverse engineering of large projects (about 1000 files). Note: If you select this option, nested #include statements
are not analyzed.
See Analyzing header files with the same name for an example.
- Only from file list means
to analyze only the include files you specified in the main Reverse
Engineering window.
For example,
suppose you have four files (one.h, two.h, three.h and one.cpp)
and you select the files named one.h, two.h,
and one.cpp. The reverse engineering utility will
analyze one.cpp and its include files one.h and two.h.
It will not analyze three.h because you did
not select it.
This mode gives you the
most control and strategic conservation of performance, eliminating
the needless analysis of irrelevant files and redundant information.
In addition, it enables you to select files containing important declarations
to the analysis without having to add every file within the directory.
This mode of reverse engineering imports all the information needed
and creates dependencies through whole project. It is designed for
middle-sized projects (about 100 files). See Analyze a list of files for an example.
- All means to analyze all
included files on all levels. This mode is called recursive analysis,
and consumes the most performance because it imports all information,
even redundant information such as MFC and STL. This is the default
value.
The <lang>_ReverseEngineering::ImplementationTrait::AnalyzeIncludeFiles property
has enumerated values to indicate how the reverse engineering process
analyzes include files. See the definition provided for the property
on the applicable Properties tab of the Features
window.
For C++ projects, you can use the CreateDependencies property
to specify how the reverse engineering feature is to handle the creation
of dependency elements in the model from code constructs such as #includes, forward declarations, friends,
and namespace usage. For more details on how to use
this property, see the definition provided for the property on the
applicable Properties tab of the Features window.