24 #ifndef __CellIterator__ 25 #define __CellIterator__ 29 #include "TableTypes.h" 30 #include "K2Iterator.h" 32 template <
class Structure>
38 typedef std::ptrdiff_t difference_type;
42 typedef std::bidirectional_iterator_tag iterator_category;
69 const Structure* fStructure;
72 template <
class Structure>
78 typedef std::bidirectional_iterator_tag iterator_category;
81 typedef std::ptrdiff_t difference_type;
90 if(fCached != fCurrent)
94 pointer operator->()
const {
return &(**this); }
126 template <
typename T>
130 return static_cast<bool16
>(lhs.base() == rhs.base());
133 template <
typename T>
136 operator< (const ReverseCellIterator<T>& lhs,
139 return static_cast<bool16
>(lhs.base() < rhs.base());
142 template <
typename T>
148 return static_cast<bool16
>(lhs.base() != rhs.base());
199 #endif //__CellIterator__