29 #ifndef SECURE_PERMUTATION_HEADER_GUARD
30 #define SECURE_PERMUTATION_HEADER_GUARD
54 template <
typename T_DataType>
55 void Permute (T_DataType &vector)
const;
58 template <
typename T_DataType>
80 #endif//SECURE_PERMUTATION_HEADER_GUARD
~SecurePermutation()
Destructor.
SecurePermutation(const size_t size)
Default constructor.
std::deque< std::pair< size_t, size_t > > PermutationVector
Define the permutation map container.
SecurePermutation operator=(SecurePermutation const &)
Copy assignment operator - not implemented.
Permutation class which implements the Fisher-Yates (Knuth) shuffle algorithm.
Implementation of template members from class SecurePermutation. To be included in secure_permutation...
void InvertPermutation(T_DataType &vector) const
Applies the permutations in reverse to the input verctor.
PermutationVector permutations
The vector of permutations.
void Permute(T_DataType &vector) const
Applies the permutations to the input vector.
const size_t vectorSize
The size of the vectors that can be permuted.