2 /* platf_generator.h - Public interface to the SimGrid platforms generator */
4 /* Copyright (c) 2004-2012. The SimGrid Team. All rights reserved. */
6 /* This program is free software; you can redistribute it and/or modify it
7 * under the terms of the license (GNU LGPL) which comes with this package. */
10 #define SG_PLATF_GEN_H
13 #include "xbt/graph.h" //Only for platf_graph_get()
22 XBT_PUBLIC(void) platf_random_seed(unsigned long seed[6]);
24 XBT_PUBLIC(void) platf_graph_uniform(unsigned long node_count);
25 XBT_PUBLIC(void) platf_graph_heavytailed(unsigned long node_count);
27 XBT_PUBLIC(void) platf_graph_interconnect_star(void);
28 XBT_PUBLIC(void) platf_graph_interconnect_line(void);
29 XBT_PUBLIC(void) platf_graph_interconnect_ring(void);
30 XBT_PUBLIC(void) platf_graph_interconnect_clique(void);
31 XBT_PUBLIC(void) platf_graph_interconnect_uniform(double alpha);
32 XBT_PUBLIC(void) platf_graph_interconnect_exponential(double alpha);
34 XBT_PUBLIC(void) platf_graph_promote_to_host(xbt_node_t node, sg_platf_host_cbarg_t parameters);
35 XBT_PUBLIC(void) platf_graph_promote_to_cluster(xbt_node_t node, sg_platf_cluster_cbarg_t parameters);
37 XBT_PUBLIC(void) platf_graph_link_label(xbt_edge_t edge, sg_platf_link_cbarg_t parameters);
39 // WARNING : Only for debbugging ; should be removed when platform
40 // generation works correctly
41 XBT_PUBLIC(xbt_graph_t) platf_graph_get(void);
43 #endif /* SG_PLATF_GEN_H */