21 #ifndef mia_2d_iterator_hh
22 #define mia_2d_iterator_hh
98 template <
typename AI>
108 template <
typename AI>
117 template <
typename AI>
138 template <
typename T>
friend
166 template <
typename I>
167 template <
typename AI>
171 m_size = other.m_size;
172 m_begin = other.m_begin;
174 m_iterator = other.m_iterator;
175 m_xstride = other.m_xstride;
176 m_boundary = other.m_boundary;
180 template <
typename I>
181 template <
typename AI>
184 m_size(other.m_size),
185 m_begin(other.m_begin),
187 m_xstride(other.m_xstride),
188 m_iterator(other.m_iterator),
189 m_boundary(other.m_boundary)
198 template <
typename I>
206 return left.m_pos == right.m_pos;
213 template <
typename I>
I::pointer pointer
data type pointer
bool operator==(const CAttribute &a, const CAttribute &b)
pointer operator->() const
internal_iterator get_point()
int get_boundary_flags() const
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
const C2DBounds & pos() const
range2d_iterator< I > & operator++()
prefix increment
bool operator!=(const C2DImage &a, const C2DImage &b)
I internal_iterator
data type for the real iterator in the background
I::reference reference
data type reference
a 2D iterator that knows its position in the 2D grid ans supports iterating over sub-ranges ...
range2d_iterator< I > & operator=(const range2d_iterator< I > &other)
assignment operator
reference operator*() const
#define NS_MIA_END
conveniance define to end the mia namespace