-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) const
+{
+ 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(not this->resource_subsets_.empty());
+ fprintf(jed_file, " <res_util>\n");
+ for (auto const& subset : this->resource_subsets_) {
+ fprintf(jed_file, " <select resources=\"");
+ fprintf(jed_file, "%s", subset.parent->get_hierarchy_as_string().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");