3 #include <simgrid/platf_generator.h>
6 #include <xbt/RngStream.h>
12 e_platf_node_kind kind;
13 } s_context_node_t, *context_node_t;
15 static xbt_graph_t platform_graph = NULL;
17 static RngStream rng_stream = NULL;
19 void platf_random_seed(unsigned long seed[6]) {
21 if(rng_stream == NULL) {
22 //stream not created yet, we do it now
23 rng_stream = RngStream_CreateStream(NULL);
26 RngStream_SetSeed(rng_stream, seed);
30 void platf_graph_init(int node_count, e_platf_placement placement) {
32 platform_graph = xbt_graph_new_graph(TRUE, NULL);
33 if(rng_stream == NULL) {
34 rng_stream = RngStream_CreateStream(NULL);
37 for(i=0 ; i<node_count ; i++) {
38 context_node_t node_data = NULL;
39 node_data = xbt_new(s_context_node_t, 1);
42 node_data->x = RngStream_RandU01(rng_stream);
43 node_data->y = RngStream_RandU01(rng_stream);
49 node_data->degree = 0;
50 node_data->kind = ROUTER;
51 xbt_graph_new_node(platform_graph, (void*) node_data);