Volume Cartographer 2.27.0
Classes | Namespaces | Functions
Iteration.hpp File Reference
#include <cmath>
#include <cstddef>
#include <iostream>
#include <type_traits>
Include dependency graph for Iteration.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  volcart::RangeIterable< T, >
 Provides an iterable range of numbers with optional step size. More...
 
class  volcart::RangeIterable< T, >::CountingIterator< ItT >
 
class  volcart::Range2DIterable< T, >
 Provides an iterable range of 2D number pairs with optional step size. More...
 
class  volcart::Range2DIterable< T, >::Counting2DIterator< ItT >
 
class  volcart::EnumerateIterable< Iterable >
 
class  volcart::EnumerateIterable< Iterable >::EnumerateIterator< T >
 

Namespaces

namespace  volcart
 Volume Cartographer library
 

Functions

template<typename T >
std::ostream & volcart::operator<< (std::ostream &os, const RangeIterable< T > &it)
 
template<typename T >
auto volcart::range (T stop)
 
template<typename T0 , typename T1 >
auto volcart::range (T0 start, T1 stop)
 
template<typename T0 , typename T1 , typename T2 >
auto volcart::range (T0 start, T1 stop, T2 step)
 
template<typename T0 , typename T1 >
auto volcart::range2D (T0 vStop, T1 uStop)
 
template<typename T0 , typename T1 , typename T2 , typename T3 >
auto volcart::range2D (T0 vStart, T1 vStop, T2 uStart, T3 uStop)
 
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
auto volcart::range2D (T0 vStart, T1 vStop, T2 uStart, T3 uStop, T4 step)
 
template<class Iterable >
auto volcart::enumerate (Iterable &&it)
 Wrap an Iterable into a new one whose iterators return an [index, value] pair. More...
 
template<typename... Args>
EnumerateIterable< std::vector< std::common_type_t< Args... > > > volcart::enumerate (Args &&... args)
 Wrap an Iterable into a new one whose iterators return an [index, value] pair. More...