Class ov::CoordinateIterator#
-
class CoordinateIterator#
A useful class that allows to iterate over the tensor coordinates. For example, for tensor with dimensions {2, 3} this iterator produces the following coordinates: {0,0}, {0,1}, {0,2}, {1,0}, {1,1}, {2,2}.
Public Functions
-
inline CoordinateIterator(const Shape &target_shape)#
Coordinates iterator constructor.
- Parameters:
target_shape – The target shape for coordinates iteration
-
void operator++()#
The postfix operation increment the iterator by one.
-
CoordinateIterator operator++(int)#
The prefix operation increment the iterator by one.
-
void operator+=(size_t n)#
Increments iterator n times.
- Parameters:
n – number of elements it should be advanced
-
const Coordinate &operator*() const noexcept#
Iterator dereferencing operator returns reference to current pointed coordinate.
-
bool operator!=(const CoordinateIterator &it) const noexcept#
Checks for iterator inequality.
- Parameters:
it – second iterator to compare
-
bool operator==(const CoordinateIterator &it) const noexcept#
Checks for iterator equality.
- Parameters:
it – second iterator to compare
-
size_t advance(size_t axis) noexcept#
Increments iterator using specified axis of the shape n times.
- Parameters:
axis – index used for iteration
Public Static Functions
-
static const CoordinateIterator &end()#
Useful function to build the last iterator. Returns a singleton that points to the last iterator.
-
inline CoordinateIterator(const Shape &target_shape)#