ref: 9d4e6ef4318d53d7d046a7dd906906e42ffb3b46
dir: /llt/random.c/
/*
random numbers
*/
#include "llt.h"
#include "mt19937-64.h"
static mt19937_64 ctx;
uint64_t
genrand_uint64(void)
{
return genrand64_int64(&ctx);
}
uint32_t
genrand_uint32(void)
{
return genrand64_int64(&ctx) >> 32;
}
int64_t
genrand_int63(void)
{
return genrand64_int63(&ctx);
}
double
genrand_double(void)
{
return genrand64_real1(&ctx);
}
void
randomize(void)
{
unsigned long long tm = i64time();
init_by_array64(&ctx, &tm, 1);
}