![]() |
ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
RAII loop wrapper replacing the CALI_CXX_MARK_LOOP_BEGIN / CALI_CXX_MARK_LOOP_ITERATION / CALI_CXX_MARK_LOOP_END macro triplet.
More...
#include <caliper_utils.hpp>
Public Member Functions | |
| EspressoCaliLoop (const char *name) | |
| ~EspressoCaliLoop () | |
| EspressoCaliLoop (const EspressoCaliLoop &)=delete | |
| EspressoCaliLoop & | operator= (const EspressoCaliLoop &)=delete |
| EspressoCaliIteration | iteration (int iter) const |
| Return an RAII iteration annotation for the current step. | |
Public Attributes | |
| cali::Loop * | loop_ |
| cali_id_t | iter_attr_ |
RAII loop wrapper replacing the CALI_CXX_MARK_LOOP_BEGIN / CALI_CXX_MARK_LOOP_ITERATION / CALI_CXX_MARK_LOOP_END macro triplet.
When espresso_cali_active() is true at construction time, creates the same cali.loop region and iteration::name attribute as the raw Caliper macros would. When inactive, construction, iteration(), and destruction are all no-ops with no Caliper calls.
Usage:
Definition at line 165 of file caliper_utils.hpp.
|
inlineexplicit |
Definition at line 169 of file caliper_utils.hpp.
References espresso_cali_active(), iter_attr_, and loop_.
|
inline |
Definition at line 176 of file caliper_utils.hpp.
References loop_.
|
delete |
|
inline |
Return an RAII iteration annotation for the current step.
The returned EspressoCaliIteration must be kept alive for the duration of the loop body; store it in a named local variable.
Definition at line 190 of file caliper_utils.hpp.
References iter_attr_, and loop_.
Referenced by System::System::integrate().
|
delete |
| cali_id_t EspressoCaliLoop::iter_attr_ |
Definition at line 167 of file caliper_utils.hpp.
Referenced by EspressoCaliLoop(), and iteration().
| cali::Loop* EspressoCaliLoop::loop_ |
Definition at line 166 of file caliper_utils.hpp.
Referenced by EspressoCaliLoop(), iteration(), and ~EspressoCaliLoop().