Ion
|
#include "ion/base/staticsafedeclare.h"
#include "ion/profile/calltracemanager.h"
#include "ion/profile/tracerecorder.h"
Go to the source code of this file.
Namespaces | |
ion | |
Copyright 2016 Google Inc. | |
ion::profile | |
Macros | |
#define | ION_PROFILING_PASTE1(x, y) x ## y |
Some levels of indirection required to make C preprocessor recursively expand LINE macro in presence of ## operator. More... | |
#define | ION_PROFILING_PASTE2(x, y) ION_PROFILING_PASTE1(x, y) |
#define | ION_PROFILING_PASTE3(x) ION_PROFILING_PASTE2(x, __LINE__) |
#define | ION_PROFILE_FUNCTION(func_name) |
This macro can be used at the top of a function scope to declare the function and create a DefaultScopedTracer instance to automatically mark the entry and exit points of the function. More... | |
#define | ION_PROFILE_FUNCTION_ANNOTATED(func_name, key, value) |
A version of ION_PROFILE_FUNCTION which allows attaching a single key/value pair to the scope. More... | |
#define | ION_PROFILE_FRAME |
Functions | |
CallTraceManager * | ion::profile::GetCallTraceManager () |
Get the global, static instance of CallTraceManager. More... | |
#define ION_PROFILE_FRAME |
Definition at line 70 of file profiling.h.
#define ION_PROFILE_FUNCTION | ( | func_name | ) |
This macro can be used at the top of a function scope to declare the function and create a DefaultScopedTracer instance to automatically mark the entry and exit points of the function.
The argument must be a literal string.
Definition at line 47 of file profiling.h.
#define ION_PROFILE_FUNCTION_ANNOTATED | ( | func_name, | |
key, | |||
value | |||
) |
A version of ION_PROFILE_FUNCTION which allows attaching a single key/value pair to the scope.
Unlike func_name, the key and value do not need to be string literals. value must be in JSON format, e.g. "\"my_string"" for a string value, "18" for the integer value 18, "{ "name": "my_name", "count": 17 }" for an object with two key value pairs.
Definition at line 65 of file profiling.h.
#define ION_PROFILING_PASTE1 | ( | x, | |
y | |||
) | x ## y |
Some levels of indirection required to make C preprocessor recursively expand LINE macro in presence of ## operator.
Definition at line 39 of file profiling.h.
#define ION_PROFILING_PASTE2 | ( | x, | |
y | |||
) | ION_PROFILING_PASTE1(x, y) |
Definition at line 40 of file profiling.h.
#define ION_PROFILING_PASTE3 | ( | x | ) | ION_PROFILING_PASTE2(x, __LINE__) |
Definition at line 41 of file profiling.h.