1 #ifndef _SURFACEINSPECTOR_MATHS_PERMUTERS_CNRINDEXPERMUTER_HPP_
2 #define _SURFACEINSPECTOR_MATHS_PERMUTERS_CNRINDEXPERMUTER_HPP_
4 #include <surfaceinspector/maths/permuters/IPermuter.hpp>
8 namespace SurfaceInspector {
namespace maths{
namespace permuters {
81 #include <maths/permuters/CNRIndexPermuter.tpp>
Permuter of Combinations with No Repetition (CNR) for indices.
Definition: CNRIndexPermuter.hpp:17
CNRIndexPermuter(T n, T k)
Build a permuter for combinations with no repetitions of indices selecting .
void start()
Definition: CNRIndexPermuter.hpp:64
bool hasNext()
Definition: CNRIndexPermuter.hpp:68
T n
How many indices there are, so it defines a range .
Definition: CNRIndexPermuter.hpp:24
T max
How many combinations without repetitions, , there exist.
Definition: CNRIndexPermuter.hpp:33
T current
Index of current permutation.
Definition: CNRIndexPermuter.hpp:37
vector< T > indices
Current indices permutation.
Definition: CNRIndexPermuter.hpp:41
T k
How many indices are selected for each permutation.
Definition: CNRIndexPermuter.hpp:28
T stopIndex
Index to be used as stop condition.
Definition: CNRIndexPermuter.hpp:45
vector< T > get()
Definition: CNRIndexPermuter.hpp:76
Permuter interface provides methods to iterate over different permutation configurations....
Definition: IPermuter.hpp:24