18 #ifndef itkMapContainer_h
19 #define itkMapContainer_h
44 template <
typename TElementIdentifier,
typename TElement>
47 ,
private std::map<TElementIdentifier, TElement>
67 using MapType = std::map<ElementIdentifier, Element>;
83 template <
typename TInputIterator>
87 template <
typename TInputIterator>
107 const STLContainerType &
113 using STLContainerType::begin;
114 using STLContainerType::end;
115 using STLContainerType::rbegin;
116 using STLContainerType::rend;
118 using STLContainerType::empty;
119 using STLContainerType::size;
120 using STLContainerType::max_size;
122 using STLContainerType::operator[];
124 using STLContainerType::insert;
125 using STLContainerType::erase;
127 using STLContainerType::clear;
129 using STLContainerType::key_comp;
130 using STLContainerType::value_comp;
132 using STLContainerType::find;
133 using STLContainerType::count;
134 using STLContainerType::lower_bound;
135 using STLContainerType::upper_bound;
136 using STLContainerType::equal_range;
138 using STLContainerType::get_allocator;
140 using typename STLContainerType::key_type;
141 using typename STLContainerType::mapped_type;
142 using typename STLContainerType::value_type;
143 using typename STLContainerType::key_compare;
144 using typename STLContainerType::value_compare;
145 using typename STLContainerType::allocator_type;
146 using typename STLContainerType::reference;
147 using typename STLContainerType::const_reference;
148 using typename STLContainerType::iterator;
149 using typename STLContainerType::const_iterator;
150 using typename STLContainerType::size_type;
151 using typename STLContainerType::difference_type;
152 using typename STLContainerType::pointer;
153 using typename STLContainerType::const_pointer;
154 using typename STLContainerType::reverse_iterator;
155 using typename STLContainerType::const_reverse_iterator;
173 using pointer =
typename MapIterator::pointer;
213 return m_Iter == r.
m_Iter;
218 return m_Iter != r.
m_Iter;
223 return m_Iter == r.
m_Iter;
228 return m_Iter != r.
m_Iter;
235 return m_Iter->first;
242 return m_Iter->second;
260 using pointer =
typename MapConstIterator::pointer;
303 return m_Iter == r.
m_Iter;
308 return m_Iter != r.
m_Iter;
313 return m_Iter == r.
m_Iter;
318 return m_Iter != r.
m_Iter;
325 return m_Iter->first;
332 return m_Iter->second;
466 #ifndef ITK_MANUAL_INSTANTIATION
467 # include "itkMapContainer.hxx"