Registered profiler instance. More...
#include <kanzi/core/profiling/profiler_registration_helper.hpp>
Public Types | |
typedef shared_ptr< TProfiler > | ProfilerSharedPtr |
The profiler shared pointer type. More... | |
Public Member Functions | |
template<typename TRegistryType > | |
ProfilerRegistrationHelper (TRegistryType ®istry, ProfilerSharedPtr profiler) | |
Constructor. More... | |
Public Attributes | |
ProfilerSharedPtr | m_profiler |
The registered profiler. More... | |
Registered profiler instance.
Do not use this structure directly. Profiling macros use it internally for profiling.
This template structure encapsulates shared pointer to the arbitrary profiler. It is used to create object of the profiler class and register it within the profiler registry in single expression. This is used in Profiling macros when profiling scope or function to create local static objects of the profiler.
typedef shared_ptr<TProfiler> kanzi::detail::ProfilerRegistrationHelper< TProfiler >::ProfilerSharedPtr |
The profiler shared pointer type.
|
inlineexplicit |
Constructor.
Registers new profiler withing profiler registry provided by you through registry
. The shared pointer to the profiler is kept in stucture and is accessible through m_profiler.
registry | The reference to the profiler registry where to add profiler . |
profiler | The shared pointer to the profiler to add to new registry. |
ProfilerSharedPtr kanzi::detail::ProfilerRegistrationHelper< TProfiler >::m_profiler |
The registered profiler.