Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Platform generation: little modifications to the connectedness check function
[simgrid.git] / include / simgrid / platf_generator.h
index b1ce6c8..767fe6e 100644 (file)
@@ -24,14 +24,17 @@ typedef struct s_context_node_t {
   double x, y;
   int degree;
   e_platf_node_kind kind;
+  int connect_checked;
   union {
     s_sg_platf_host_cbarg_t host_parameters;
     s_sg_platf_cluster_cbarg_t cluster_parameters;
+    char* router_id;
   };
 } s_context_node_t, *context_node_t;
 
 typedef struct s_context_edge_t {
   unsigned long id;
+  double length;
   int labeled;
   s_sg_platf_link_cbarg_t link_parameters;
 } s_context_edge_t, *context_edge_t;
@@ -54,6 +57,10 @@ XBT_PUBLIC(void) platf_graph_interconnect_zegura(double alpha, double beta, doub
 XBT_PUBLIC(void) platf_graph_interconnect_waxman(double alpha, double beta);
 XBT_PUBLIC(void) platf_graph_interconnect_barabasi(void);
 
+XBT_PUBLIC(int) platf_graph_is_connected(void);
+
+XBT_PUBLIC(void) platf_graph_clear_links(void);
+
 XBT_PUBLIC(void) platf_graph_promote_to_host(context_node_t node, sg_platf_host_cbarg_t parameters);
 XBT_PUBLIC(void) platf_graph_promote_to_cluster(context_node_t node, sg_platf_cluster_cbarg_t parameters);
 
@@ -65,6 +72,8 @@ XBT_PUBLIC(void) platf_graph_labeler(platf_labeler_cb_t labeler_callback);
 XBT_PUBLIC(void) platf_do_promote(void);
 XBT_PUBLIC(void) platf_do_label(void);
 
+XBT_PUBLIC(void) platf_generate(void);
+
 // WARNING : Only for debbugging ; should be removed when platform
 // generation works correctly
 XBT_PUBLIC(xbt_graph_t) platf_graph_get(void);