|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
   32       throw std::runtime_error(
"Dereferencing past-the-end iterator!");
 
   39       throw std::runtime_error(
"Dereferencing past-the-end iterator!");
 
   76       if (++(*backItr) < 
end)
 
   82         std::iota(backItr.base(), 
m_current.end(), *backItr + 1);
 
  111     return !(*
this == 
other);
 
  
KFromNItr & operator++()
Pre-increment operator.
pointer operator->() const
void reset()
Reset the iterator to its start position.
const value_type * pointer
std::size_t size() const
The size of each combination (k)
bool operator!=(const KFromNItr &other) const
bool operator==(const KFromNItr &other) const
Iterator comparison functions.
std::size_t m_N
The number of indices.
reference operator*() const
Dereference.
Iterates over all combinations of k values chosen from a range n.
bool exhausted() const
True if this iterator is past the end.
std::vector< std::size_t > m_current
The current combination.
KFromNItr()=default
Default constructor creates a generic past-the-end iterator.
const value_type & reference