Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
remove useless dependencies
[simgrid.git] / src / include / surf / random_mgr.h
index 7233e71..b261a59 100644 (file)
@@ -5,18 +5,24 @@
 #include "xbt/dict.h"
 #include <stdlib.h>
 #include <math.h>
-#include <stdio.h>
 
-typedef enum {NONE, DRAND48, RAND} Generator;
+SG_BEGIN_DECL()
 
-typedef struct random_data_desc {
-  int max, min, mean, stdDeviation;
-  Generator generator;
-} s_random_data_t, *random_data_t;
+     typedef enum { NONE, DRAND48, RAND } Generator;
+
+     typedef struct random_data_desc {
+       long int seed;
+       double max, min;
+       double mean, std;        /* note: mean and standard deviation are normalized */
+       Generator generator;
+     } s_random_data_t, *random_data_t;
 
 XBT_PUBLIC_DATA(xbt_dict_t) random_data_list;
 
-XBT_PUBLIC(float) random_generate(random_data_t random);
-XBT_PUBLIC(random_data_t) random_new(int generator, int min, int max, int mean, int stdDeviation);
+XBT_PUBLIC(double) random_generate(random_data_t random);
+XBT_PUBLIC(random_data_t) random_new(Generator generator, long int seed,
+                                     double min, double max, double mean,
+                                     double stdDeviation);
 
-#endif                         /* _SURF_RMGR_H */
+SG_END_DECL()
+#endif /* _SURF_RMGR_H */