#include <mtgp64-fast.h>
Data Fields | |
| int | idx |
| index | |
| int | size |
| minimum needed size | |
| int | large_size |
| real size of array | |
| int | large_mask |
| bit mask to update idx | |
| uint64_t | array [] |
| internal state array | |
MTGP64 interface structure.
In this structure, we use larger_size and larger_mask to avoid slow operation of remainder (%).
size is the minimum needed size to represent linear space of two element filed as 64-bit array.
large_size is a minimum power of 2 which is larger than size. array has this size.
large_mask is a bit mask to update idx in a fast way. idx is updated by `logical and' & with large_mask.
| uint64_t MTGP64_STATUS_FAST_T::array[] |
internal state array
Referenced by mtgp64_genrand_close1_open2(), mtgp64_genrand_open_open(), mtgp64_genrand_uint64(), mtgp64_init(), mtgp64_init_by_array(), mtgp64_init_by_str(), and mtgp64_next_state().
bit mask to update idx
Referenced by alloc_state(), mtgp64_genrand_close1_open2(), mtgp64_genrand_open_open(), mtgp64_genrand_uint64(), and mtgp64_next_state().
real size of array
Referenced by alloc_state(), mtgp64_genrand_close1_open2(), mtgp64_genrand_open_open(), mtgp64_genrand_uint64(), and mtgp64_next_state().
minimum needed size
Referenced by alloc_state(), mtgp64_genrand_close1_open2(), mtgp64_genrand_open_open(), mtgp64_genrand_uint64(), mtgp64_init(), mtgp64_init_by_array(), mtgp64_init_by_str(), and mtgp64_next_state().
1.5.9