Random123
Classes
The r123arrayNxW classes

Each of the r123arrayNxW is a fixed size array of N W-bit unsigned integers. It is functionally equivalent to the C++11 std::array<N, uintW_t>, but does not require C++11 features or libraries. More...

Classes

struct  r123array1x32
 
struct  r123array2x32
 
struct  r123array4x32
 
struct  r123array8x32
 
struct  r123array1x64
 
struct  r123array2x64
 
struct  r123array4x64
 
struct  r123array16x8
 
struct  r123array1xm128i
 

Detailed Description

Each of the r123arrayNxW is a fixed size array of N W-bit unsigned integers. It is functionally equivalent to the C++11 std::array<N, uintW_t>, but does not require C++11 features or libraries.

In addition to meeting most of the requirements of a Container, it also has a member function, incr(), which increments the zero-th element and carrys overflows into higher indexed elements. Thus, by using incr(), sequences of up to 2^(N*W) distinct values can be produced.

If SSE is supported by the compiler, then the class r123array1xm128i is also defined, in which the data member is an array of one r123m128i object.

When compiling with __CUDA_ARCH__ defined, the reverse iterator methods (rbegin, rend, crbegin, crend) are not defined because CUDA does not support std::reverse_iterator.