libebml_ng
Public Member Functions | Protected Attributes | List of all members
ebml::seekMap< K, H, E, A > Class Template Reference

Container mapping keys to seek data objects with keys. More...

#include <seekdata.h>

Inheritance diagram for ebml::seekMap< K, H, E, A >:
ebml::seekMapBase

Public Member Functions

 seekMap ()
 
seekDataWithKey_t< K > *& operator[] (const K &)
 
seekDataWithKey_t< K > *& at (const K &)
 
seekDataWithKey_t< K > *const & at (const K &) const
 
void insert (const std::pair< K, seekDataWithKey_t< K > *> &)
 
void insert (std::pair< K, seekDataWithKey_t< K > *> &&)
 
size_t count (const K &) const
 
size_t erase (const K &)
 
std::wstring repr () const
 
void add (seekData_t *) override
 
void rm (seekData_t *) override
 
- Public Member Functions inherited from ebml::seekMapBase
 seekMapBase ()
 
virtual ~seekMapBase ()
 
template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, seekDataWithKey_t<K>*>>>
seekMap< K, H, E, A > & withKeyType ()
 
template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, seekDataWithKey_t<K>*>>>
const seekMap< K, H, E, A > & withKeyType () const
 
template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, seekDataWithKey_t<K>*>>>
seekDataWithKey_t< K > *& operator[] (const K &)
 
template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, seekDataWithKey_t<K>*>>>
seekDataWithKey_t< K > *& at (const K &)
 
template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, seekDataWithKey_t<K>*>>>
seekDataWithKey_t< K > *const & at (const K &) const
 
template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, seekDataWithKey_t<K>*>>>
size_t count (const K &) const
 
template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, seekDataWithKey_t<K>*>>>
size_t erase (const K &)
 

Protected Attributes

std::unordered_map< K, seekDataWithKey_t< K > *, H, E, A > _items
 

Detailed Description

template<typename K, typename H, typename E, typename A>
class ebml::seekMap< K, H, E, A >

Container mapping keys to seek data objects with keys.

Templated on the key type used for searching.

Template Parameters
KThe key type.
HHash functor for keys.
EEquality comparison functor for keys.
AAllocator for key-data pairs.

Constructor & Destructor Documentation

◆ seekMap()

template<typename K, typename H, typename E, typename A>
ebml::seekMap< K, H, E, A >::seekMap ( )

Member Function Documentation

◆ add()

template<typename K, typename H, typename E, typename A>
void ebml::seekMap< K, H, E, A >::add ( seekData_t )
overridevirtual

Implements ebml::seekMapBase.

◆ at() [1/2]

template<typename K, typename H, typename E, typename A>
seekDataWithKey_t<K>*& ebml::seekMap< K, H, E, A >::at ( const K &  )

◆ at() [2/2]

template<typename K, typename H, typename E, typename A>
seekDataWithKey_t<K>* const& ebml::seekMap< K, H, E, A >::at ( const K &  ) const

◆ count()

template<typename K, typename H, typename E, typename A>
size_t ebml::seekMap< K, H, E, A >::count ( const K &  ) const

◆ erase()

template<typename K, typename H, typename E, typename A>
size_t ebml::seekMap< K, H, E, A >::erase ( const K &  )

◆ insert() [1/2]

template<typename K, typename H, typename E, typename A>
void ebml::seekMap< K, H, E, A >::insert ( const std::pair< K, seekDataWithKey_t< K > *> &  )

◆ insert() [2/2]

template<typename K, typename H, typename E, typename A>
void ebml::seekMap< K, H, E, A >::insert ( std::pair< K, seekDataWithKey_t< K > *> &&  )

◆ operator[]()

template<typename K, typename H, typename E, typename A>
seekDataWithKey_t<K>*& ebml::seekMap< K, H, E, A >::operator[] ( const K &  )

◆ repr()

template<typename K, typename H, typename E, typename A>
std::wstring ebml::seekMap< K, H, E, A >::repr ( ) const
virtual

Reimplemented from ebml::seekMapBase.

◆ rm()

template<typename K, typename H, typename E, typename A>
void ebml::seekMap< K, H, E, A >::rm ( seekData_t )
overridevirtual

Implements ebml::seekMapBase.

Member Data Documentation

◆ _items

template<typename K, typename H, typename E, typename A>
std::unordered_map<K, seekDataWithKey_t<K>*, H, E, A> ebml::seekMap< K, H, E, A >::_items
protected

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