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.
|
#include "timemory/mpl/concepts.hpp"
#include "timemory/mpl/types.hpp"
#include "timemory/utility/macros.hpp"
#include <cstdint>
#include <iostream>
#include <string>
#include <type_traits>
Go to the source code of this file.
Namespaces | |
namespace | tim |
namespace | tim::concepts |
namespace | tim::mpl |
namespace | std |
STL namespace. | |
Macros | |
#define | TSTAG(X) X |
\macro TSTAG More... | |
Typedefs | |
template<typename... Types> | |
using | tim::concat = typename impl::concat< Types... >::type |
Functions | |
template<typename BundleT , typename FuncT , typename... Args> | |
auto | tim::mpl::execute (BundleT &&_bundle, FuncT &&_func, Args &&... _args, enable_if_t< is_invocable< FuncT, Args... >::value &&!std::is_void< std::result_of_t< FuncT(Args...)> >::value, int >) |
template<typename BundleT , typename FuncT , typename... Args> | |
auto | tim::mpl::execute (BundleT &&_bundle, FuncT &&_func, Args &&... _args, enable_if_t< is_invocable< FuncT, Args... >::value &&std::is_void< std::result_of_t< FuncT(Args...)> >::value, int >) |
template<typename BundleT , typename ValueT > | |
auto | tim::mpl::execute (BundleT &&_bundle, ValueT &&_value, enable_if_t<!is_invocable< ValueT >::value, long >) |
TIMEMORY_DEFINE_VARIADIC_CONCEPT (is_variadic, std::tuple, true_type, typename) TIMEMORY_DEFINE_VARIADIC_CONCEPT(is_variadic | |
typename | TIMEMORY_DEFINE_TEMPLATE_CONCEPT (is_empty, auto_bundle, true_type, typename) TIMEMORY_DEFINE_TEMPLATE_CONCEPT(is_empty |
typename typename | TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE (tuple_type, std::tuple, typename, std::tuple< T... >) TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE(auto_type |
typename typename auto_bundle< T... > | TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE (component_type, std::tuple, typename, component_bundle< T... >) TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE(tuple_type |
typename typename auto_bundle< T... > std::tuple< T... > | TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE (auto_type, type_list, typename, auto_bundle< T... >) TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE(component_type |
Variables | |
type_list | |
typename | component_bundle |
typename typename | typename |
struct tim::concepts::component_type< auto_tuple< Types... > > |
Class Members | ||
---|---|---|
typedef component_tuple< Types... > | type |
struct tim::concepts::component_type< auto_list< Types... > > |
Class Members | ||
---|---|---|
typedef component_list< Types... > | type |
struct tim::concepts::component_type< auto_bundle< Types... > > |
Class Members | ||
---|---|---|
typedef component_bundle< Types... > | type |
struct tim::concepts::component_type< auto_hybrid< Types... > > |
Class Members | ||
---|---|---|
typedef component_hybrid< Types... > | type |
struct tim::concepts::tuple_type< component_bundle< T, Types... > > |
struct tim::concepts::tuple_type< auto_bundle< T, Types... > > |
#define TSTAG | ( | X | ) | X |
TIMEMORY_DEFINE_VARIADIC_CONCEPT | ( | is_variadic | , |
std::tuple | , | ||
true_type | , | ||
typename | |||
) |
typename typename auto_bundle< T... > std::tuple< T... > TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE | ( | auto_type | , |
type_list | , | ||
typename | , | ||
auto_bundle< T... > | |||
) |
typename typename auto_bundle< T... > TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE | ( | component_type | , |
std::tuple | , | ||
typename | , | ||
component_bundle< T... > | |||
) |
typename typename TIMEMORY_DEFINE_VARIADIC_CONCEPT_TYPE | ( | tuple_type | , |
std::tuple | , | ||
typename | , | ||
std::tuple< T... > | |||
) |