18 #ifndef itkVectorContainer_h
19 #define itkVectorContainer_h
47 template <
typename TElementIdentifier,
typename TElement>
50 ,
private std::vector<TElement>
90 template <
typename TInputIterator>
119 const STLContainerType &
125 using STLContainerType::begin;
126 using STLContainerType::end;
127 using STLContainerType::rbegin;
128 using STLContainerType::rend;
129 using STLContainerType::cbegin;
130 using STLContainerType::cend;
131 using STLContainerType::crbegin;
132 using STLContainerType::crend;
134 using STLContainerType::size;
135 using STLContainerType::max_size;
136 using STLContainerType::resize;
137 using STLContainerType::capacity;
138 using STLContainerType::empty;
139 using STLContainerType::reserve;
140 using STLContainerType::shrink_to_fit;
142 using STLContainerType::operator[];
143 using STLContainerType::at;
144 using STLContainerType::front;
145 using STLContainerType::back;
147 using STLContainerType::assign;
148 using STLContainerType::push_back;
149 using STLContainerType::pop_back;
150 using STLContainerType::insert;
151 using STLContainerType::erase;
153 using STLContainerType::clear;
155 using STLContainerType::get_allocator;
157 using typename STLContainerType::reference;
158 using typename STLContainerType::const_reference;
159 using typename STLContainerType::iterator;
160 using typename STLContainerType::const_iterator;
163 using typename STLContainerType::difference_type;
164 using typename STLContainerType::value_type;
165 using typename STLContainerType::allocator_type;
166 using typename STLContainerType::pointer;
167 using typename STLContainerType::const_pointer;
168 using typename STLContainerType::reverse_iterator;
169 using typename STLContainerType::const_reverse_iterator;
172 friend class Iterator;
173 friend class ConstIterator;
186 using pointer =
typename VectorIterator::pointer;
232 return static_cast<difference_type>(this->m_Pos) - static_cast<difference_type>(r.
m_Pos);
238 return m_Iter == r.
m_Iter;
241 ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(
Iterator);
246 return m_Iter == r.
m_Iter;
254 return (this->
operator-(r)) < 0;
285 return static_cast<ElementIdentifier>(m_Pos);
312 using pointer =
typename VectorConstIterator::pointer;
313 using reference =
typename VectorConstIterator::reference;
376 return static_cast<difference_type>(m_Pos) - static_cast<difference_type>(r.
m_Pos);
382 return m_Iter == r.
m_Iter;
385 ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(
Iterator);
390 return m_Iter == r.
m_Iter;
398 return (this->
operator-(r) < 0);
422 return static_cast<ElementIdentifier>(m_Pos);
573 #ifndef ITK_MANUAL_INSTANTIATION
574 # include "itkVectorContainer.hxx"