name_info_impl< EnumT, ValueT > Struct Template Reference

name_info_impl&lt; EnumT, ValueT &gt; Struct Template Reference#

Rocprofiler SDK Developer API: rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT > Struct Template Reference
Rocprofiler SDK Developer API 0.4.0
ROCm Profiling API and tools
rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT > Struct Template Reference

#include "rocprofiler-sdk/cxx/name_info.hpp"

+ Collaboration diagram for rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >:

Public Types

using support_type = mpl::string_support< ValueT >
 
using enum_type = EnumT
 
using value_type = ValueT
 
using return_type = typename support_type::return_type
 
using item_type = std::pair< rocprofiler_tracing_operation_t, const value_type * >
 
using item_array_t = std::vector< item_type >
 

Public Member Functions

return_type operator() () const
 
return_type operator() (unsigned long idx) const
 
return_type operator[] (unsigned long idx) const
 
item_array_t items () const
 

Data Fields

EnumT value = static_cast<EnumT>(0)
 
value_type name = {}
 
std::vector< value_typeoperations = {}
 

Detailed Description

template<typename EnumT, typename ValueT = std::string_view>
struct rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >

Definition at line 41 of file name_info.hpp.

Member Typedef Documentation

◆ enum_type

template<typename EnumT , typename ValueT = std::string_view>
using rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::enum_type = EnumT

Definition at line 44 of file name_info.hpp.

◆ item_array_t

template<typename EnumT , typename ValueT = std::string_view>
using rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::item_array_t = std::vector<item_type>

Definition at line 48 of file name_info.hpp.

◆ item_type

template<typename EnumT , typename ValueT = std::string_view>
using rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::item_type = std::pair<rocprofiler_tracing_operation_t, const value_type*>

Definition at line 47 of file name_info.hpp.

◆ return_type

template<typename EnumT , typename ValueT = std::string_view>
using rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::return_type = typename support_type::return_type

Definition at line 46 of file name_info.hpp.

◆ support_type

template<typename EnumT , typename ValueT = std::string_view>
using rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::support_type = mpl::string_support<ValueT>

Definition at line 43 of file name_info.hpp.

◆ value_type

template<typename EnumT , typename ValueT = std::string_view>
using rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::value_type = ValueT

Definition at line 45 of file name_info.hpp.

Member Function Documentation

◆ items()

template<typename EnumT , typename ValueT >
name_info_impl< EnumT, ValueT >::item_array_t rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::items ( ) const

Definition at line 46 of file name_info.hpp.

47{
48 auto ret = item_array_t{};
49 ret.reserve(operations.size());
51 for(const auto& itr : operations)
52 ret.emplace_back(_idx++, &itr);
53 return ret;
54}
uint32_t rocprofiler_tracing_operation_t
Tracing Operation ID. Depending on the kind, operations can be determined. If the value is equal to z...
Definition fwd.h:448
std::vector< value_type > operations
Definition name_info.hpp:61
std::vector< item_type > item_array_t
Definition name_info.hpp:48

◆ operator()() [1/2]

template<typename EnumT , typename ValueT = std::string_view>
return_type rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::operator() ( ) const
inline

◆ operator()() [2/2]

template<typename EnumT , typename ValueT = std::string_view>
return_type rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::operator() ( unsigned long  idx) const
inline

Definition at line 54 of file name_info.hpp.

54{ return operations.at(idx); }

References rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::operations.

◆ operator[]()

template<typename EnumT , typename ValueT = std::string_view>
return_type rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::operator[] ( unsigned long  idx) const
inline

Definition at line 55 of file name_info.hpp.

55{ return operations.at(idx); }

References rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::operations.

Field Documentation

◆ name

template<typename EnumT , typename ValueT = std::string_view>
value_type rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::name = {}

◆ operations

template<typename EnumT , typename ValueT = std::string_view>
std::vector<value_type> rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::operations = {}

◆ value

template<typename EnumT , typename ValueT = std::string_view>
EnumT rocprofiler::sdk::utility::name_info_impl< EnumT, ValueT >::value = static_cast<EnumT>(0)

Definition at line 59 of file name_info.hpp.


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