X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f3507930c130404d05f982cf9fe960fb95f7eb4b..2c1cf331f7be1c55098faf7ba7a542149576614c:/src/include/surf/random_mgr.h diff --git a/src/include/surf/random_mgr.h b/src/include/surf/random_mgr.h index 7233e715b7..19b4a15a58 100644 --- a/src/include/surf/random_mgr.h +++ b/src/include/surf/random_mgr.h @@ -1,22 +1,33 @@ +/* Copyright (c) 2007-2014. The SimGrid Team. + * All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + #ifndef _SURF_RMGR_H #define _SURF_RMGR_H #include "xbt/heap.h" #include "xbt/dict.h" -#include -#include -#include -typedef enum {NONE, DRAND48, RAND} Generator; +SG_BEGIN_DECL() + +typedef enum { NONE, DRAND48, RAND, RNGSTREAM } e_random_generator_t; typedef struct random_data_desc { - int max, min, mean, stdDeviation; - Generator generator; + long int seed; + double max, min; + double mean, std; /* note: mean and standard deviation are normalized */ + e_random_generator_t 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(e_random_generator_t generator, + long int seed, + double min, double max, double mean, + double stdDeviation); -#endif /* _SURF_RMGR_H */ +SG_END_DECL() +#endif /* _SURF_RMGR_H */