/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing
**
** This file is part of Qt Creator
**
**
** GNU Free Documentation License
**
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of this
** file.
**
**
****************************************************************************/

// **********************************************************************
// NOTE: the sections are not ordered by their logical order to avoid
// reshuffling the file each time the index order changes (i.e., often).
// Run the fixnavi.pl script to adjust the links to the index order.
// **********************************************************************

/*!
    \contentspage {Qt Creator Manual}
    \previouspage creator-troubleshooting-debugging.html
    \page creator-analyze-mode.html
    \nextpage creator-qml-performance-monitor.html

    \title Analyzing Code

    You can use the code analysis tools in the \uicontrol Analyze mode. To
    switch to \uicontrol Analyze mode, select \uicontrol Analyze in the mode
    selector, or select the \uicontrol {Analyze} menu and then select a tool.
    When you are in the \uicontrol Analyze mode, you can switch between tools by
    selecting them in the menu on the toolbar.

    \image qtcreator-analyze-menu.png "Analyze mode menu"

    You can drag and drop the views in the \uicontrol Analyze mode to new
    positions on the screen. The size and position of views are saved for future
    sessions. Select \uicontrol {Window > Views > Reset to Default Layout} to
    reset the views to their original sizes and positions.

    You can use the following code analysis tools in the \uicontrol Analyze
    mode:

    \list

        \li \l{Profiling QML Applications}{QML Profiler}

            You can inspect binding evaluations, signal handling, and
            painting operations when running QML code. This is useful for
            identifying potential bottlenecks, especially in the evaluation
            of bindings.

        \li \l{Using Valgrind Code Analysis Tools}{Valgrind Code Analysis Tools}

            You can detect problems in memory management by using the Memcheck
            tool and find cache misses in the code by using the Callgrind tool.

        \li \l{Using Clang Static Analyzer}{Clang Static Analyzer}

            You can detect problems in C, C++, and
            Objective-C programs by using the experimental plugin that
            integrates the Clang Static Analyzer source code analysis tool
            (commercial only).

        \li \l{Analyzing CPU Usage}{CPU Usage Analyzer}

            You can analyze the CPU usage of embedded applications and Linux
            desktop applications with the CPU Usage Analyzer (commercial only)
            that integrates the Linux Perf tool.

    \endlist

*/
