1 #ifndef _RANDOM_BITGEN_H 2 #define _RANDOM_BITGEN_H 3 4 #pragma once 5 #include <stddef.h> 6 #include <stdbool.h> 7 #include <stdint.h> 8 9 /* Must match the declaration in numpy/random/<any>.pxd */ 10 11 typedef struct bitgen { 12 void *state; 13 uint64_t (*next_uint64)(void *st); 14 uint32_t (*next_uint32)(void *st); 15 double (*next_double)(void *st); 16 uint64_t (*next_raw)(void *st); 17 } bitgen_t; 18 19 20 #endif 21