23#ifndef DD_CACHE__MULTI_MAP_BASE_INCLUDED
24#define DD_CACHE__MULTI_MAP_BASE_INCLUDED
143 template <
typename K>
148 template <
typename K>
182 fprintf(stderr,
" Reverse element map:\n");
183 m_map<const T *>()->dump();
184 fprintf(stderr,
" Id map:\n");
185 m_map<typename T::Id_key>()->dump();
186 fprintf(stderr,
" Name map:\n");
187 m_map<typename T::Name_key>()->dump();
188 fprintf(stderr,
" Aux map:\n");
189 m_map<typename T::Aux_key>()->dump();
Implementation of a dictionary client.
Definition: cache_element.h:68
Implementation of a map between a key type and an element type.
Definition: element_map.h:71
Implementation of a set of maps for a given object type.
Definition: multi_map_base.h:63
const Element_map< const T *, Cache_element< T > > * m_map(Type_selector< const T * >) const
Definition: multi_map_base.h:87
Element_map< typename T::Aux_key, Cache_element< T > > m_aux_map
Definition: multi_map_base.h:72
Element_map< constT *, Cache_element< T > >::Iterator Iterator
Definition: multi_map_base.h:127
Element_map< const T *, Cache_element< T > > m_rev_map
Definition: multi_map_base.h:65
const Element_map< typename T::Aux_key, Cache_element< T > > * m_map(Type_selector< typename T::Aux_key >) const
Definition: multi_map_base.h:117
Element_map< typename T::Id_key, Cache_element< T > > * m_map(Type_selector< typename T::Id_key >)
Definition: multi_map_base.h:92
Element_map< K, Cache_element< T > > * m_map()
Template function to get an element map.
Definition: multi_map_base.h:144
const Element_map< typename T::Id_key, Cache_element< T > > * m_map(Type_selector< typename T::Id_key >) const
Definition: multi_map_base.h:97
Element_map< typename T::Name_key, Cache_element< T > > m_name_map
Definition: multi_map_base.h:70
Element_map< const T *, Cache_element< T > > * m_map(Type_selector< const T * >)
Overloaded functions to use for selecting an element list instance based on a key type.
Definition: multi_map_base.h:83
const Element_map< K, Cache_element< T > > * m_map() const
Definition: multi_map_base.h:149
Element_map< constT *, Cache_element< T > >::Const_iterator Const_iterator
Definition: multi_map_base.h:125
Element_map< typename T::Name_key, Cache_element< T > > * m_map(Type_selector< typename T::Name_key >)
Definition: multi_map_base.h:102
void dump() const
Debug dump of the multi map base to stderr.
Definition: multi_map_base.h:180
Element_map< typename T::Aux_key, Cache_element< T > > * m_map(Type_selector< typename T::Aux_key >)
Definition: multi_map_base.h:112
void add_single_element(Cache_element< T > *element)
Helper function to add a single element.
Definition: multi_map_base.cc:58
Element_map< typename T::Id_key, Cache_element< T > > m_id_map
Definition: multi_map_base.h:68
void remove_single_element(Cache_element< T > *element)
Helper function to remove the mapping of a single element, without deleting the element itself.
Definition: multi_map_base.cc:44
const Element_map< typename T::Name_key, Cache_element< T > > * m_map(Type_selector< typename T::Name_key >) const
Definition: multi_map_base.h:107
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:42
Definition: multi_map_base.h:75