Template Class uniform_int_distribution
Defined in File rocrand.hpp
Class Documentation
-
template<class IntType = unsigned int>
class uniform_int_distribution Produces random integer values uniformly distributed on the interval [0, 2^(sizeof(IntType)*8) - 1].
- Template Parameters:
IntType – - type of generated values. Only
unsigned
char
,unsigned
short
andunsigned
int
andunsigned
long
long
int
type is supported.
Public Functions
-
inline uniform_int_distribution()
Default constructor.
-
inline void reset()
Resets distribution’s internal state if there is any.
-
template<class Generator>
inline void operator()(Generator &g, IntType *output, size_t size) Fills
output
with uniformly distributed random integer values.Generates
size
random integer values uniformly distributed on the interval [0, 2^(sizeof(IntType)*8) - 1], and stores them into the device memory referenced byoutput
pointer.Requirements:
The device memory pointed by
output
must have been previously allocated and be large enough to store at leastsize
values ofIntType
type.If generator
g
is a quasi-random number generator (rocrand_cpp::sobol32_engine
), thensize
must be a multiple of that generator’s dimension.
See also: rocrand_generate(), rocrand_generate_char(), rocrand_generate_short()
- Parameters:
g – - An uniform random number generator object
output – - Pointer to device memory to store results
size – - Number of values to generate
-
inline bool operator==(const uniform_int_distribution<IntType> &other)
Returns
true
if the distribution is the same asother
.
-
inline bool operator!=(const uniform_int_distribution<IntType> &other)
Returns
true
if the distribution is different fromother
.