24#ifndef DD_CACHE__MULTI_MAP_BASE_INCLUDED
25#define DD_CACHE__MULTI_MAP_BASE_INCLUDED
144 template <
typename K>
149 template <
typename K>
183 fprintf(stderr,
" Reverse element map:\n");
184 m_map<const T *>()->dump();
185 fprintf(stderr,
" Id map:\n");
186 m_map<typename T::Id_key>()->dump();
187 fprintf(stderr,
" Name map:\n");
188 m_map<typename T::Name_key>()->dump();
189 fprintf(stderr,
" Aux map:\n");
190 m_map<typename T::Aux_key>()->dump();
Implementation of a dictionary client.
Definition: cache_element.h:69
Implementation of a map between a key type and an element type.
Definition: element_map.h:72
Implementation of a set of maps for a given object type.
Definition: multi_map_base.h:64
const Element_map< const T *, Cache_element< T > > * m_map(Type_selector< const T * >) const
Definition: multi_map_base.h:88
Element_map< typename T::Aux_key, Cache_element< T > > m_aux_map
Definition: multi_map_base.h:73
Element_map< constT *, Cache_element< T > >::Iterator Iterator
Definition: multi_map_base.h:128
Element_map< const T *, Cache_element< T > > m_rev_map
Definition: multi_map_base.h:66
const Element_map< typename T::Aux_key, Cache_element< T > > * m_map(Type_selector< typename T::Aux_key >) const
Definition: multi_map_base.h:118
Element_map< typename T::Id_key, Cache_element< T > > * m_map(Type_selector< typename T::Id_key >)
Definition: multi_map_base.h:93
Element_map< K, Cache_element< T > > * m_map()
Template function to get an element map.
Definition: multi_map_base.h:145
const Element_map< typename T::Id_key, Cache_element< T > > * m_map(Type_selector< typename T::Id_key >) const
Definition: multi_map_base.h:98
Element_map< typename T::Name_key, Cache_element< T > > m_name_map
Definition: multi_map_base.h:71
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:84
const Element_map< K, Cache_element< T > > * m_map() const
Definition: multi_map_base.h:150
Element_map< constT *, Cache_element< T > >::Const_iterator Const_iterator
Definition: multi_map_base.h:126
Element_map< typename T::Name_key, Cache_element< T > > * m_map(Type_selector< typename T::Name_key >)
Definition: multi_map_base.h:103
void dump() const
Debug dump of the multi map base to stderr.
Definition: multi_map_base.h:181
Element_map< typename T::Aux_key, Cache_element< T > > * m_map(Type_selector< typename T::Aux_key >)
Definition: multi_map_base.h:113
void add_single_element(Cache_element< T > *element)
Helper function to add a single element.
Definition: multi_map_base.cc:59
Element_map< typename T::Id_key, Cache_element< T > > m_id_map
Definition: multi_map_base.h:69
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:45
const Element_map< typename T::Name_key, Cache_element< T > > * m_map(Type_selector< typename T::Name_key >) const
Definition: multi_map_base.h:108
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:43
Definition: multi_map_base.h:76