GLib.Rand¶
record (struct)
The GRand struct is an opaque data structure. It should only be accessed through the g_rand_* functions.
Constructors¶
new¶
Creates a new random number generator initialized with a seed taken
either from /dev/urandom (if existing) or from the current time
(as a fallback).
On Windows, the seed is taken from rand_s().
new_with_seed¶
Creates a new random number generator initialized with seed.
Parameters:
seed— a value to initialize the random number generator
new_with_seed_array¶
Creates a new random number generator initialized with seed.
Parameters:
seed— an array of seeds to initialize the random number generatorseed_length— an array of seeds to initialize the random number generator
Methods¶
copy¶
Copies a Rand into a new one with the same exact state as before.
This way you can take a snapshot of the random number generator for
replaying later.
double¶
Returns the next random #gdouble from rand_ equally distributed over
the range [0..1).
double_range¶
Returns the next random #gdouble from rand_ equally distributed over
the range [begin..end).
Parameters:
begin— lower closed bound of the intervalend— upper open bound of the interval
free¶
Frees the memory allocated for the Rand.
int_¶
Returns the next random #guint32 from rand_ equally distributed over
the range [0..2^32-1].
int_range¶
Returns the next random #gint32 from rand_ equally distributed over
the range [begin..end-1].
Parameters:
begin— lower closed bound of the intervalend— upper open bound of the interval
set_seed¶
Sets the seed for the random number generator Rand to seed.
Parameters:
seed— a value to reinitialize the random number generator
set_seed_array¶
Initializes the random number generator by an array of longs. Array can be of arbitrary size, though only the first 624 values are taken. This function is useful if you have many low entropy seeds, or if you require more then 32 bits of actual entropy for your application.
Parameters:
seed— array to initialize withseed_length— length of array