21 #ifndef LUNCHBOX_LFVECTOR_ITERATOR_H 22 #define LUNCHBOX_LFVECTOR_ITERATOR_H 24 #include <lunchbox/indexIterator.h> 35 template<
class V,
class T >
45 template<
class U,
class W >
49 T&
operator*()
const {
return (*Super::container_)[ Super::i_ ]; }
52 T*
operator->()
const {
return &(*Super::container_)[ Super::i_ ]; }
56 {
return (*Super::container_)[ Super::i_ + n ]; }
59 template<
class,
int32_t >
friend class LFVector;
64 #endif // LUNCHBOX_LFVECTOR_ITERATOR_H Counter-based, as opposed to pointer-based, iterator for any container.
An iterator for LFVector.
STL-like vector implementation providing certain thread-safety guarantees.
LFVectorIterator(const LFVectorIterator< U, W > &from)
Copy-construct an iterator.
T & operator*() const
Dereference the element at the current position.
LFVectorIterator(V *vector, size_t i)
Construct an iterator for a given vector and position.
T & operator[](const size_t &n) const
Address the element at the given position.
Abstraction layer and common utilities for multi-threaded programming.
T * operator->() const
Address the element at the current position.