|
timemory 3.3.0
Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools.
|
This is a critical specialization for mapping string and integers to component types at runtime. The enum_string() function is the enum id as a string. The id() function is (typically) the name of the C++ component as a string. The ids() function returns a set of strings which are alternative string identifiers to the enum string or the string ID. Additionally, it provides serializaiton of these values.
More...
#include "timemory/components/properties.hpp"
Collaboration diagram for tim::component::properties< Tp >:Public Types | |
| using | type = Tp |
| using | value_type = TIMEMORY_COMPONENT |
Public Member Functions | |
| template<typename Archive > | |
| void | serialize (Archive &, const unsigned int) |
| TIMEMORY_COMPONENT | operator() () |
| constexpr | operator TIMEMORY_COMPONENT () const |
Static Public Member Functions | |
| static constexpr bool | specialized () |
| static constexpr const char * | enum_string () |
| static constexpr const char * | id () |
| static idset_t | ids () |
Static Public Attributes | |
| static constexpr TIMEMORY_COMPONENT | value = TIMEMORY_COMPONENTS_END |
This is a critical specialization for mapping string and integers to component types at runtime. The enum_string() function is the enum id as a string. The id() function is (typically) the name of the C++ component as a string. The ids() function returns a set of strings which are alternative string identifiers to the enum string or the string ID. Additionally, it provides serializaiton of these values.
| Tp | Component type |
A macro is provides to simplify this specialization:
In the above, the first parameter is the C++ type, the second is the enumeration id, the enum string is automatically generated via preprocessor # on the second parameter, the third parameter is the string ID, and the remaining values are placed in the ids(). Additionally, this macro specializes the tim::component::enumerator.
Definition at line 213 of file properties.hpp.
| using tim::component::properties< Tp >::type = Tp |
Definition at line 215 of file properties.hpp.
| using tim::component::properties< Tp >::value_type = TIMEMORY_COMPONENT |
Definition at line 216 of file properties.hpp.
|
inlinestaticconstexpr |
Definition at line 220 of file properties.hpp.
|
inlinestaticconstexpr |
Definition at line 221 of file properties.hpp.
Referenced by tim::runtime::do_enumerator_enumerate(), and tim::component::papi_rate_tuple< RateT, EventTypes >::label().
|
inlinestatic |
Definition at line 222 of file properties.hpp.
|
inlineconstexpr |
|
inline |
|
inline |
Definition at line 224 of file properties.hpp.
|
inlinestaticconstexpr |
Definition at line 219 of file properties.hpp.
|
staticconstexpr |
Definition at line 217 of file properties.hpp.