/* platf_generator.h - Public interface to the SimGrid platforms generator */
-/* Copyright (c) 2004-2012. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2004-2012. 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. */
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;
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);
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);