X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/139c5f52fbe9304c2c437876a332a4bce68358d3..34d2adc6cc16583d1a76eb79bdc36f39268829f7:/src/instr/jedule/jedule_output.c
diff --git a/src/instr/jedule/jedule_output.c b/src/instr/jedule/jedule_output.c
index 71bce594d7..cafd545629 100644
--- a/src/instr/jedule/jedule_output.c
+++ b/src/instr/jedule/jedule_output.c
@@ -71,13 +71,38 @@ static void get_hierarchy_list(xbt_dynar_t hier_list, jed_simgrid_container_t co
}
+static void get_hierarchy_string(jed_simgrid_container_t container, char *outbuf) {
+ char buf[1024];
+ xbt_dynar_t hier_list;
+ unsigned int iter;
+ int number;
+ int length;
+
+ outbuf[0] = '\0';
+ hier_list = xbt_dynar_new(sizeof(int), NULL);
+ get_hierarchy_list(hier_list, container);
+
+ length = xbt_dynar_length(hier_list);
+
+ xbt_dynar_foreach(hier_list, iter, number) {
+ if( iter != length-1 ) {
+ sprintf(buf, "%d.\0", number);
+ } else {
+ sprintf(buf, "%d\0", number);
+ }
+ strcat(outbuf, buf);
+ }
+
+ xbt_dynar_free(&hier_list);
+}
+
static void print_key_value_dict(xbt_dict_t key_value_dict) {
xbt_dict_cursor_t cursor=NULL;
char *key,*data;
if( key_value_dict != NULL ) {
xbt_dict_foreach(key_value_dict,cursor,key,data) {
- fprintf(jed_file, "\n",key,data);
+ fprintf(jed_file, "\n",key,data);
}
}
}
@@ -103,11 +128,14 @@ static void print_resources(jed_simgrid_container_t resource_parent) {
int res_nb;
unsigned int i;
char *res_name;
+ char resid[1024];
xbt_assert( resource_parent->resource_list != NULL );
res_nb = xbt_dynar_length(resource_parent->resource_list);
+
+ get_hierarchy_string(resource_parent, resid);
- fprintf(jed_file, "resource_list, i, res_name) {
fprintf(jed_file, "%s", res_name);
if( i != res_nb-1 ) {
@@ -136,10 +164,10 @@ static void print_event(jed_event_t event) {
fprintf(jed_file, "\n");
- fprintf(jed_file, "\n", event->name);
- fprintf(jed_file, "\n", event->start_time);
- fprintf(jed_file, "\n", event->end_time);
- fprintf(jed_file, "\n", event->type);
+ fprintf(jed_file, "\n", event->name);
+ fprintf(jed_file, "\n", event->start_time);
+ fprintf(jed_file, "\n", event->end_time);
+ fprintf(jed_file, "\n", event->type);
fprintf(jed_file, "\n");
@@ -147,26 +175,15 @@ static void print_event(jed_event_t event) {
int start = subset->start_idx;
int end = subset->start_idx + subset->nres - 1;
- xbt_dynar_t hier_list;
- unsigned int iter;
- int number;
-
- hier_list = xbt_dynar_new(sizeof(int), NULL);
-
- //printf("subset start %d nres %d\n", subset->start_idx, subset->nres);
-
- //printf("parent %s\n", event->resource_selection[i]->parent->name);
- get_hierarchy_list(hier_list, subset->parent);
+ char resid[1024];
+ get_hierarchy_string(subset->parent, resid);
+
fprintf(jed_file, "\n");
- xbt_dynar_free(&hier_list);
}
fprintf(jed_file, "\n");