-void create_jed_event(jed_event_t *event, char *name, double start_time,
- double end_time, const char *type) {
-
- *event = xbt_new0(s_jed_event_t,1);
- (*event)->name = xbt_strdup(name);
+void Event::print(FILE *jed_file)
+{
+ fprintf(jed_file, " <event>\n");
+ fprintf(jed_file, " <prop key=\"name\" value=\"%s\" />\n", this->name.c_str());
+ fprintf(jed_file, " <prop key=\"start\" value=\"%g\" />\n", this->start_time);
+ fprintf(jed_file, " <prop key=\"end\" value=\"%g\" />\n", this->end_time);
+ fprintf(jed_file, " <prop key=\"type\" value=\"%s\" />\n", this->type.c_str());
+
+ xbt_assert(!this->resource_subsets-> empty());
+ fprintf(jed_file, " <res_util>\n");
+ for (auto subset: *this->resource_subsets) {
+ fprintf(jed_file, " <select resources=\"");
+ fprintf(jed_file, "%s", subset->parent->getHierarchyAsString().c_str());
+ fprintf(jed_file, ".[%d-%d]", subset->start_idx, subset->start_idx + subset->nres-1);
+ fprintf(jed_file, "\" />\n");
+ }
+ fprintf(jed_file, " </res_util>\n");