Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Remove 'using namespace foo;' in headers
[simgrid.git] / src / surf / callbacks.cpp
index d8d48c7..86dedde 100644 (file)
@@ -10,7 +10,7 @@
 #include "src/surf/surf_interface.hpp"
 #include "src/surf/host_interface.hpp"
 
-void surf_host_created_callback(void (*callback)(sg_host_t))
+void surf_on_host_created(void (*callback)(sg_host_t))
 {
   hostCreatedCallbacks.connect([callback](Host* host) {
     const char* id = host->getName();
@@ -19,3 +19,14 @@ void surf_host_created_callback(void (*callback)(sg_host_t))
     callback(h);
   });
 }
+
+void surf_on_storage_created(void (*callback)(sg_storage_t))
+{
+  storageCreatedCallbacks.connect([callback](Storage* storage) {
+    const char* id = storage->getName();
+    // TODO, create sg_storage_by_name
+    sg_storage_t s = xbt_lib_get_elm_or_null(storage_lib, id);
+    xbt_assert(s != NULL, "Storage not found for name %s", id);
+    callback(s);
+  });
+}