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 >;
79 template<
typename TInputIterator >
81 template<
typename TInputIterator >
104 using STLContainerType::begin;
105 using STLContainerType::end;
106 using STLContainerType::rbegin;
107 using STLContainerType::rend;
109 using STLContainerType::empty;
110 using STLContainerType::size;
111 using STLContainerType::max_size;
113 using STLContainerType::operator[];
115 using STLContainerType::insert;
116 using STLContainerType::erase;
118 using STLContainerType::clear;
120 using STLContainerType::key_comp;
121 using STLContainerType::value_comp;
123 using STLContainerType::find;
124 using STLContainerType::count;
125 using STLContainerType::lower_bound;
126 using STLContainerType::upper_bound;
127 using STLContainerType::equal_range;
129 using STLContainerType::get_allocator;
131 using typename STLContainerType::key_type;
132 using typename STLContainerType::mapped_type;
133 using typename STLContainerType::value_type;
134 using typename STLContainerType::key_compare;
135 using typename STLContainerType::value_compare;
136 using typename STLContainerType::allocator_type;
137 using typename STLContainerType::reference;
138 using typename STLContainerType::const_reference;
139 using typename STLContainerType::iterator;
140 using typename STLContainerType::const_iterator;
141 using typename STLContainerType::size_type;
142 using typename STLContainerType::difference_type;
143 using typename STLContainerType::pointer;
144 using typename STLContainerType::const_pointer;
145 using typename STLContainerType::reverse_iterator;
146 using typename STLContainerType::const_reverse_iterator;
164 using pointer =
typename MapIterator::pointer;
205 using pointer =
typename MapConstIterator::pointer;
354 #ifndef ITK_MANUAL_INSTANTIATION
355 #include "itkMapContainer.hxx"
typename MapConstIterator::difference_type difference_type
bool operator==(const ConstIterator &r) const
bool operator==(const Iterator &r) const
Light weight base class for most itk classes.
bool operator==(const ConstIterator &r) const
MapContainer(const MapKeyCompareType &comp)
A wrapper of the STL "map" container.
typename MapConstIterator::pointer pointer
ConstIterator & operator=(const ConstIterator &r)
typename MapType::const_iterator MapConstIterator
bool operator!=(const ConstIterator &r) const
const Element & Value() const
typename MapIterator::difference_type difference_type
bool operator==(const Iterator &r) const
STLContainerType & CastToSTLContainer() noexcept
bool operator!=(const ConstIterator &r) const
typename MapIterator::reference reference
ConstIterator & operator++()
Iterator(const Iterator &i)
void swap(Array< T > &a, Array< T > &b)
The non-const iterator type for the map.
bool operator!=(const Iterator &r) const
typename MapType::key_compare MapKeyCompareType
The const iterator type for the map.
Represent a n-dimensional size (bounds) of a n-dimensional image.
MapContainer(TInputIterator first, TInputIterator last, const MapKeyCompareType &comp)
bool operator!=(const Iterator &r) const
ElementIdentifier Index() const
ConstIterator * operator->()
ConstIterator(const MapConstIterator &ci)
MapContainer(TInputIterator first, TInputIterator last)
TElementIdentifier ElementIdentifier
typename MapConstIterator::value_type value_type
ConstIterator operator++(int)
Iterator(const MapIterator &i)
typename MapConstIterator::reference reference
ConstIterator(const Iterator &r)
ConstIterator operator--(int)
ConstIterator & operator--()
typename MapIterator::pointer pointer
const STLContainerType & CastToSTLConstContainer() const noexcept
typename MapIterator::value_type value_type
std::map< ElementIdentifier, Element > MapType
typename MapIterator::iterator_category iterator_category
typename MapConstIterator::iterator_category iterator_category
ElementIdentifier Index() const
Iterator & operator=(const Iterator &r)
Base class for most ITK classes.
typename MapType::iterator MapIterator
ConstIterator & operator*()