1 #ifdef HAVE_CONFIG_H 2 #include "config.h" 3 #endif 4 5 #include "goom_tools.h" 6 7 #include <stdlib.h> 8 goom_random_init(int i)9GoomRandom *goom_random_init(int i) { 10 GoomRandom *grandom = (GoomRandom*)malloc(sizeof(GoomRandom)); 11 (void)i; 12 grandom->pos = 1; 13 goom_random_update_array(grandom, GOOM_NB_RAND); 14 return grandom; 15 } 16 goom_random_free(GoomRandom * grandom)17void goom_random_free(GoomRandom *grandom) { 18 free(grandom); 19 } 20 goom_random_update_array(GoomRandom * grandom,int numberOfValuesToChange)21void goom_random_update_array(GoomRandom *grandom, int numberOfValuesToChange) { 22 while (numberOfValuesToChange > 0) { 23 #if RAND_MAX < 0x10000 24 grandom->array[grandom->pos++] = ((rand()<<16)+rand()) / 127; 25 #else 26 grandom->array[grandom->pos++] = rand() / 127; 27 #endif 28 numberOfValuesToChange--; 29 } 30 } 31