All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Static Public Attributes | List of all members
lar::details::CountersMapTraits< KEY, COUNTER, SIZE > Struct Template Reference

#include <CountersMap.h>

Public Types

using Key_t = KEY
 Type of counter key in the map. More...
 
using Counter_t = COUNTER
 Type of the single counter. More...
 
using CounterBlock_t = CounterBlock< Counter_t, NCounters >
 Type of counter block actually stored. More...
 
using PlainBaseMap_t = std::map< Key_t, CounterBlock_t, std::less< Key_t >>
 General type of map (no special allocator specified). More...
 
using DefaultAllocator_t = typename PlainBaseMap_t::allocator_type
 Type of allocator for the plain map. More...
 
template<typename Alloc >
using BaseMap_t = std::map< Key_t, CounterBlock_t, std::less< Key_t >, Alloc >
 Base type of map, allowing a custom allocator. More...
 
using MapValue_t = typename PlainBaseMap_t::value_type
 Type of value in the map. More...
 

Static Public Attributes

static constexpr size_t NCounters = SIZE
 Number of counters in one counter block. More...
 

Detailed Description

template<typename KEY, typename COUNTER, size_t SIZE>
struct lar::details::CountersMapTraits< KEY, COUNTER, SIZE >

Definition at line 64 of file CountersMap.h.

Member Typedef Documentation

template<typename KEY, typename COUNTER, size_t SIZE>
template<typename Alloc >
using lar::details::CountersMapTraits< KEY, COUNTER, SIZE >::BaseMap_t = std::map<Key_t, CounterBlock_t, std::less<Key_t>, Alloc>

Base type of map, allowing a custom allocator.

Definition at line 84 of file CountersMap.h.

template<typename KEY, typename COUNTER, size_t SIZE>
using lar::details::CountersMapTraits< KEY, COUNTER, SIZE >::Counter_t = COUNTER

Type of the single counter.

Definition at line 67 of file CountersMap.h.

template<typename KEY, typename COUNTER, size_t SIZE>
using lar::details::CountersMapTraits< KEY, COUNTER, SIZE >::CounterBlock_t = CounterBlock<Counter_t, NCounters>

Type of counter block actually stored.

Definition at line 73 of file CountersMap.h.

template<typename KEY, typename COUNTER, size_t SIZE>
using lar::details::CountersMapTraits< KEY, COUNTER, SIZE >::DefaultAllocator_t = typename PlainBaseMap_t::allocator_type

Type of allocator for the plain map.

Definition at line 79 of file CountersMap.h.

template<typename KEY, typename COUNTER, size_t SIZE>
using lar::details::CountersMapTraits< KEY, COUNTER, SIZE >::Key_t = KEY

Type of counter key in the map.

Definition at line 66 of file CountersMap.h.

template<typename KEY, typename COUNTER, size_t SIZE>
using lar::details::CountersMapTraits< KEY, COUNTER, SIZE >::MapValue_t = typename PlainBaseMap_t::value_type

Type of value in the map.

Definition at line 87 of file CountersMap.h.

template<typename KEY, typename COUNTER, size_t SIZE>
using lar::details::CountersMapTraits< KEY, COUNTER, SIZE >::PlainBaseMap_t = std::map<Key_t, CounterBlock_t, std::less<Key_t>>

General type of map (no special allocator specified).

Definition at line 76 of file CountersMap.h.

Member Data Documentation

template<typename KEY, typename COUNTER, size_t SIZE>
constexpr size_t lar::details::CountersMapTraits< KEY, COUNTER, SIZE >::NCounters = SIZE
static

Number of counters in one counter block.

Definition at line 70 of file CountersMap.h.


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