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.
types.hpp File Reference

Declare the operations types. More...

#include "timemory/backends/dmp.hpp"
#include "timemory/macros/attributes.hpp"
#include "timemory/mpl/function_traits.hpp"
#include "timemory/mpl/types.hpp"
#include "timemory/operations/macros.hpp"
#include "timemory/settings/declaration.hpp"
#include "timemory/storage/types.hpp"
#include "timemory/variadic/types.hpp"
#include <functional>
#include <iosfwd>
#include <type_traits>
#include <utility>
+ Include dependency graph for types.hpp:

Go to the source code of this file.

Classes

struct  tim::remove_pointers< Tuple< Tp... > >
 
struct  tim::operation::is_enabled< Up >
 
struct  tim::operation::enabled_value_storage< Up >
 
struct  tim::operation::check_record_type< T, V >
 
struct  tim::operation::stats_enabled< Up, Vp >
 
struct  tim::operation::enabled_statistics< U, StatsT >
 
struct  tim::operation::init_mode
 
struct  tim::operation::insert< T >
 
struct  tim::operation::stack_push< T >
 
struct  tim::operation::pop< T >
 
struct  tim::operation::stack_pop< T >
 
struct  tim::operation::set_started< T >
 This operation attempts to call a member function which the component provides to internally store whether or not it is currently within a phase measurement (to prevent restarts) More...
 
struct  tim::operation::set_stopped< T >
 This operation attempts to call a member function which the component provides to internally store whether or not it is currently within a phase measurement (to prevent stopping when it hasn't been started) More...
 
struct  tim::operation::is_running< T, DefaultValue >
 This operation attempts to call a member function which provides whether or not the component currently within a phase measurement. More...
 
struct  tim::operation::get_is_flat< T, DefaultValue >
 This operation attempts to call a member function which provides whether or not the component pushed to storage at a depth of zero. More...
 
struct  tim::operation::get_is_invalid< T, DefaultValue >
 This operation attempts to call a member function which provides whether or not the component is in a valid state for data access and updates. More...
 
struct  tim::operation::get_is_on_stack< T, DefaultValue >
 This operation attempts to call a member function which provides whether or not the component is in a valid state for data access and updates. More...
 
struct  tim::operation::get_depth< T, DefaultDepth >
 This operation attempts to call a member function which provides a depth value. More...
 
struct  tim::operation::get_storage< T >
 This operation attempts to call a member function which provides a pointer to the data storage structure for a component which should be updated for aggregation/logging. More...
 
struct  tim::operation::get_iterator< T >
 This operation attempts to call a member function which provides a pointer to a component which exists in storage. More...
 
struct  tim::operation::dummy< T >
 
struct  tim::operation::finalize::merge< Type, true >
 
struct  tim::operation::finalize::merge< Type, false >
 
struct  tim::operation::finalize::base::print
 
struct  tim::operation::finalize::print< Tp, true >
 
struct  tim::operation::finalize::print< Tp, false >
 

Namespaces

namespace  std
 STL namespace.
 
namespace  tim
 
namespace  tim::node
 
namespace  tim::data
 
namespace  tim::utility
 
namespace  tim::operation
 
namespace  tim::operation::finalize
 
namespace  tim::operation::finalize::base
 

Typedefs

template<typename Tp >
using tim::remove_pointers_t = typename remove_pointers< Tp >::type
 
template<typename U >
using tim::operation::is_enabled_t = typename is_enabled< U >::type
 
using tim::operation::fini_mode = init_mode
 
template<int ModeV>
using tim::operation::mode_constant = std::integral_constant< int, ModeV >
 
template<typename U >
using tim::operation::has_data_t = typename has_data< U >::type
 
template<typename T >
using tim::operation::insert_node = push_node< T >
 

Functions

template<typename U >
decltype(internal::resolve_record_type< U >(0)) tim::operation::resolve_record_type ()
 

Detailed Description

Declare the operations types.

Definition in file types.hpp.


Class Documentation

◆ tim::remove_pointers< Tuple< Tp... > >

struct tim::remove_pointers< Tuple< Tp... > >
template<template< typename... > class Tuple, typename... Tp>
struct tim::remove_pointers< Tuple< Tp... > >

Definition at line 72 of file types.hpp.

+ Collaboration diagram for tim::remove_pointers< Tuple< Tp... > >:
Class Members
typedef Tuple< remove_pointer_t< Tp >... > type