+static void on_type_creation(Type& type, e_event_type event_type)
+{
+ if (event_type == PAJE_DefineLinkType)
+ return; // this kind of type has to be handled differently
+
+ std::stringstream stream;
+ stream << std::fixed << std::setprecision(TRACE_precision());
+ XBT_DEBUG("%s: event_type=%u, timestamp=%.*f", __func__, event_type, TRACE_precision(), 0.);
+ stream << event_type << " " << type.get_id() << " " << type.get_father()->get_id() << " " << type.get_name();
+ if (type.is_colored())
+ stream << " \"" << type.get_color() << "\"";
+ XBT_DEBUG("Dump %s", stream.str().c_str());
+ tracing_file << stream.str() << std::endl;
+}
+
+static void on_link_type_creation(Type& type, Type& source, Type& dest)
+{
+ std::stringstream stream;
+ XBT_DEBUG("%s: event_type=%u, timestamp=%.*f", __func__, PAJE_DefineLinkType, TRACE_precision(), 0.);
+ stream << PAJE_DefineLinkType << " " << type.get_id() << " " << type.get_father()->get_id();
+ stream << " " << source.get_id() << " " << dest.get_id() << " " << type.get_name();
+ XBT_DEBUG("Dump %s", stream.str().c_str());
+ tracing_file << stream.str() << std::endl;
+}