| 252 | } |
| 253 | |
| 254 | af_err af_random_engine_set_seed(af_random_engine *engine, const uintl seed) { |
| 255 | try { |
| 256 | AF_CHECK(af_init()); |
| 257 | RandomEngine *e = getRandomEngine(*engine); |
| 258 | *(e->seed) = seed; |
| 259 | if (e->type == AF_RANDOM_ENGINE_MERSENNE_GP11213) { |
| 260 | initMersenneState(e->state, seed, e->recursion_table); |
| 261 | } else { |
| 262 | *(e->counter) = 0; |
| 263 | } |
| 264 | } |
| 265 | CATCHALL; |
| 266 | return AF_SUCCESS; |
| 267 | } |
| 268 | |
| 269 | af_err af_random_engine_get_seed(uintl *const seed, af_random_engine engine) { |
| 270 | try { |
no test coverage detected