| | cimport numpy as np |
| | from libc.stdint cimport uint32_t, uint64_t |
| |
|
| | cdef extern from "numpy/random/bitgen.h": |
| | struct bitgen: |
| | void *state |
| | uint64_t (*next_uint64)(void *st) nogil |
| | uint32_t (*next_uint32)(void *st) nogil |
| | double (*next_double)(void *st) nogil |
| | uint64_t (*next_raw)(void *st) nogil |
| |
|
| | ctypedef bitgen bitgen_t |
| |
|
| | cdef class BitGenerator(): |
| | cdef readonly object _seed_seq |
| | cdef readonly object lock |
| | cdef bitgen_t _bitgen |
| | cdef readonly object _ctypes |
| | cdef readonly object _cffi |
| | cdef readonly object capsule |
| |
|
| |
|
| | cdef class SeedSequence(): |
| | cdef readonly object entropy |
| | cdef readonly tuple spawn_key |
| | cdef readonly Py_ssize_t pool_size |
| | cdef readonly object pool |
| | cdef readonly uint32_t n_children_spawned |
| |
|
| | cdef mix_entropy(self, np.ndarray[np.npy_uint32, ndim=1] mixer, |
| | np.ndarray[np.npy_uint32, ndim=1] entropy_array) |
| | cdef get_assembled_entropy(self) |
| |
|
| | cdef class SeedlessSeedSequence: |
| | pass |
| |
|
| | # NOTE: This has no implementation and should not be used. It purely exists for |
| | # backwards compatibility, see https: |
| | cdef class SeedlessSequence: |
| | pass |
| | |