Groonga 3.0.9 Source Code Document
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
groonga
vendor
mruby-eeac4be
mrbgems
mruby-random
src
mt19937ar.h
Go to the documentation of this file.
1
/*
2
** mt19937ar.h - MT Random functions
3
**
4
** See Copyright Notice in mruby.h
5
*/
6
7
#define N 624
8
9
typedef
struct
{
10
unsigned
long
mt[
N
];
11
int
mti
;
12
union
{
13
unsigned
long
gen_int
;
14
double
gen_dbl
;
15
};
16
}
mt_state
;
17
18
void
mrb_random_init_genrand
(
mt_state
*,
unsigned
long
);
19
unsigned
long
mrb_random_genrand_int32
(
mt_state
*);
20
double
mrb_random_genrand_real1
(
mt_state
*t);
21
22
/* initializes mt[N] with a seed */
23
void
init_genrand
(
unsigned
long
s);
24
25
/* initialize by an array with array-length */
26
/* init_key is the array for initializing keys */
27
/* key_length is its length */
28
/* slight change for C++, 2004/2/26 */
29
void
init_by_array
(
unsigned
long
init_key[],
int
key_length);
30
31
/* generates a random number on [0,0xffffffff]-interval */
32
unsigned
long
genrand_int32
(
void
);
33
34
/* generates a random number on [0,0x7fffffff]-interval */
35
long
genrand_int31
(
void
);
36
37
/* These real versions are due to Isaku Wada, 2002/01/09 added */
38
/* generates a random number on [0,1]-real-interval */
39
double
genrand_real1
(
void
);
40
41
/* generates a random number on [0,1)-real-interval */
42
double
genrand_real2
(
void
);
43
44
/* generates a random number on (0,1)-real-interval */
45
double
genrand_real3
(
void
);
46
47
/* generates a random number on [0,1) with 53-bit resolution*/
48
double
genrand_res53
(
void
);
Generated on Sun Nov 10 2013 09:49:05 for Groonga 3.0.9 Source Code Document by
1.8.1.2