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.
tim::storage< Tp, Vp > Class Template Referencefinal

#include "timemory/storage/declaration.hpp"

+ Collaboration diagram for tim::storage< Tp, Vp >:

Public Types

using this_type = storage< Tp, Vp >
 
using base_type = impl::storage< Tp, uses_value_storage_v >
 
using deleter_t = impl::storage_deleter< base_type >
 
using smart_pointer = std::unique_ptr< base_type, deleter_t >
 
using singleton_t = singleton< base_type, smart_pointer >
 
using pointer = typename singleton_t::pointer
 
using auto_lock_t = typename singleton_t::auto_lock_t
 
using iterator = typename base_type::iterator
 
using const_iterator = typename base_type::const_iterator
 

Static Public Attributes

static constexpr bool uses_value_storage_v = trait::uses_value_storage<Tp, Vp>::value
 

Friends

struct impl::storage_deleter< this_type >
 
class manager
 

Detailed Description

template<typename Tp, typename Vp>
class tim::storage< Tp, Vp >

Definition at line 798 of file declaration.hpp.

Member Typedef Documentation

◆ auto_lock_t

Definition at line 808 of file declaration.hpp.

◆ base_type

template<typename Tp , typename Vp >
using tim::storage< Tp, Vp >::base_type = impl::storage<Tp, uses_value_storage_v>

Definition at line 803 of file declaration.hpp.

◆ const_iterator

template<typename Tp , typename Vp >
using tim::storage< Tp, Vp >::const_iterator = typename base_type::const_iterator

Definition at line 810 of file declaration.hpp.

◆ deleter_t

template<typename Tp , typename Vp >
using tim::storage< Tp, Vp >::deleter_t = impl::storage_deleter<base_type>

Definition at line 804 of file declaration.hpp.

◆ iterator

template<typename Tp , typename Vp >
using tim::storage< Tp, Vp >::iterator = typename base_type::iterator

Definition at line 809 of file declaration.hpp.

◆ pointer

template<typename Tp , typename Vp >
using tim::storage< Tp, Vp >::pointer = typename singleton_t::pointer

Definition at line 807 of file declaration.hpp.

◆ singleton_t

template<typename Tp , typename Vp >
using tim::storage< Tp, Vp >::singleton_t = singleton<base_type, smart_pointer>

Definition at line 806 of file declaration.hpp.

◆ smart_pointer

template<typename Tp , typename Vp >
using tim::storage< Tp, Vp >::smart_pointer = std::unique_ptr<base_type, deleter_t>

Definition at line 805 of file declaration.hpp.

◆ this_type

template<typename Tp , typename Vp >
using tim::storage< Tp, Vp >::this_type = storage<Tp, Vp>

Definition at line 802 of file declaration.hpp.

Friends And Related Function Documentation

◆ impl::storage_deleter< this_type >

template<typename Tp , typename Vp >
friend struct impl::storage_deleter< this_type >
friend

Definition at line 801 of file declaration.hpp.

◆ manager

template<typename Tp , typename Vp >
friend class manager
friend

Definition at line 813 of file declaration.hpp.

Member Data Documentation

◆ uses_value_storage_v

template<typename Tp , typename Vp >
constexpr bool tim::storage< Tp, Vp >::uses_value_storage_v = trait::uses_value_storage<Tp, Vp>::value
staticconstexpr

Definition at line 801 of file declaration.hpp.


The documentation for this class was generated from the following file: