-typedef void (*sg_platf_AS_begin_cb_t)(const char*id, const char*routing);
-
-void sg_platf_host_add_cb(sg_platf_host_cb_t);
-void sg_platf_router_add_cb(sg_platf_router_cb_t);
-void sg_platf_link_add_cb(sg_platf_link_cb_t);
-void sg_platf_peer_add_cb(sg_platf_peer_cb_t fct);
-void sg_platf_cluster_add_cb(sg_platf_cluster_cb_t fct);
-void sg_platf_postparse_add_cb(void_f_void_t fct);
-void sg_platf_AS_begin_add_cb(sg_platf_AS_begin_cb_t fct);
-void sg_platf_AS_end_add_cb(void_f_void_t fct);
-
-/** \brief Pick the right models for CPU, net and workstation, and call their model_init_preparse
+typedef void (*sg_platf_cabinet_cb_t)(sg_platf_cabinet_cbarg_t);
+typedef void (*sg_platf_AS_cb_t)(sg_platf_AS_cbarg_t);
+typedef void (*sg_platf_prop_cb_t)(sg_platf_prop_cbarg_t);
+
+typedef void (*sg_platf_route_cb_t)(sg_platf_route_cbarg_t);
+
+typedef void (*sg_platf_trace_cb_t)(sg_platf_trace_cbarg_t);
+typedef void (*sg_platf_trace_connect_cb_t)(sg_platf_trace_connect_cbarg_t);
+
+typedef void (*sg_platf_storage_cb_t)(sg_platf_storage_cbarg_t);
+typedef void (*sg_platf_storage_type_cb_t)(sg_platf_storage_type_cbarg_t);
+typedef void (*sg_platf_mount_cb_t)(sg_platf_mount_cbarg_t);
+typedef void (*sg_platf_mstorage_cb_t)(sg_platf_mstorage_cbarg_t);
+
+/* ***************************************** */
+/* TUTORIAL: New TAG */
+
+typedef void (*sg_platf_gpu_cb_t)(sg_platf_gpu_cbarg_t);
+XBT_PUBLIC(void) sg_platf_gpu_add_cb(sg_platf_gpu_cb_t);
+/* ***************************************** */
+
+XBT_PUBLIC(void) sg_platf_link_add_cb(sg_platf_link_cb_t);
+XBT_PUBLIC(void) sg_platf_cluster_add_cb(sg_platf_cluster_cb_t fct);
+XBT_PUBLIC(void) sg_platf_postparse_add_cb(void_f_void_t fct);
+
+XBT_PUBLIC(void) sg_platf_ASroute_add_cb(sg_platf_route_cb_t);
+XBT_PUBLIC(void) sg_platf_bypassRoute_add_cb(sg_platf_route_cb_t);
+XBT_PUBLIC(void) sg_platf_bypassASroute_add_cb(sg_platf_route_cb_t);
+
+XBT_PUBLIC(void) sg_platf_trace_add_cb(sg_platf_trace_cb_t);
+XBT_PUBLIC(void) sg_platf_trace_connect_add_cb(sg_platf_trace_connect_cb_t);
+
+/** \brief Pick the right models for CPU, net and host, and call their model_init_preparse