-
-
Notifications
You must be signed in to change notification settings - Fork 3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[feature] Add runtime profiler class to profile code
- Loading branch information
Showing
7 changed files
with
311 additions
and
15 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
class QgsRuntimeProfiler | ||
{ | ||
%TypeHeaderCode | ||
#include <qgsruntimeprofiler.h> | ||
%End | ||
public: | ||
/** | ||
* @brief Instance of the run time profiler. To use the main profiler | ||
* use this instance. | ||
* @return The instance of the run time profiler | ||
*/ | ||
QgsRuntimeProfiler(); | ||
|
||
/** | ||
* @brief Begin the group for the profiler. Groups will append {GroupName}/ to the | ||
* front of the profile tag set using start. | ||
* @param name The name of the group. | ||
*/ | ||
static QgsRuntimeProfiler * instance(); | ||
|
||
/** | ||
* @brief Begin the group for the profiler. Groups will append {GroupName}/ to the | ||
* front of the profile tag set using start. | ||
* @param name The name of the group. | ||
*/ | ||
void beginGroup( const QString& name ); | ||
|
||
/** | ||
* @brief End the current active group. | ||
*/ | ||
void endGroup(); | ||
|
||
/** | ||
* @brief Start a profile event with the given name. | ||
* @param name The name of the profile event. Will have the name of | ||
* the active group appened after ending. | ||
*/ | ||
void start( const QString& name ); | ||
|
||
/** | ||
* @brief End the current profile event. | ||
*/ | ||
void end(); | ||
|
||
/** | ||
* @brief clear Clear all profile data. | ||
*/ | ||
void clear(); | ||
|
||
/** | ||
* @brief The current total time collected in the profiler. | ||
* @return The current total time collected in the profiler. | ||
*/ | ||
double totalTime(); | ||
|
||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.