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::component::factory::hidden::opaque_typeids< TupleT< T... >, true > Struct Template Reference

#include "timemory/components/opaque/definition.hpp"

+ Collaboration diagram for tim::component::factory::hidden::opaque_typeids< TupleT< T... >, true >:

Public Types

using result_type = std::set< size_t >
 
using this_type = opaque_typeids< TupleT< T... > >
 

Static Public Member Functions

template<typename U = TupleT<T...>>
static result_type get (enable_if_t< trait::is_available< U >::value, int >=0)
 
template<typename U = TupleT<T...>>
static result_type get (enable_if_t<!trait::is_available< U >::value, long >=0)
 

Detailed Description

template<template< typename... > class TupleT, typename... T>
struct tim::component::factory::hidden::opaque_typeids< TupleT< T... >, true >

Definition at line 284 of file definition.hpp.

Member Typedef Documentation

◆ result_type

template<template< typename... > class TupleT, typename... T>
using tim::component::factory::hidden::opaque_typeids< TupleT< T... >, true >::result_type = std::set<size_t>

Definition at line 286 of file definition.hpp.

◆ this_type

template<template< typename... > class TupleT, typename... T>
using tim::component::factory::hidden::opaque_typeids< TupleT< T... >, true >::this_type = opaque_typeids<TupleT<T...> >

Definition at line 287 of file definition.hpp.

Member Function Documentation

◆ get() [1/2]

template<template< typename... > class TupleT, typename... T>
template<typename U = TupleT<T...>>
static result_type tim::component::factory::hidden::opaque_typeids< TupleT< T... >, true >::get ( enable_if_t< trait::is_available< U >::value, int >  = 0)
inlinestatic

Definition at line 292 of file definition.hpp.

293 {
294 auto ret = result_type{ typeid_hash<U>() };
295 TIMEMORY_FOLD_EXPRESSION(get<T>(ret));
296 return ret;
297 }
#define TIMEMORY_FOLD_EXPRESSION(...)
Definition: types.hpp:56

References TIMEMORY_FOLD_EXPRESSION.

◆ get() [2/2]

template<template< typename... > class TupleT, typename... T>
template<typename U = TupleT<T...>>
static result_type tim::component::factory::hidden::opaque_typeids< TupleT< T... >, true >::get ( enable_if_t<!trait::is_available< U >::value, long >  = 0)
inlinestatic

Definition at line 300 of file definition.hpp.

301 {
302 return result_type({ 0 });
303 }

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