Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Shutdown sensors when dying because there were not enough of them
[simgrid.git] / examples / amok / bandwidth / bandwidth.c
index 2568bf4..c0f1eae 100644 (file)
@@ -10,7 +10,7 @@
 
 #include "gras.h"
 #include "amok/bandwidth.h"
-#include "amok/hostmanagement.h"
+#include "amok/peermanagement.h"
 
 XBT_LOG_NEW_DEFAULT_CATEGORY(Bandwidth,"Messages specific to this example");
 
@@ -27,15 +27,15 @@ int sensor (int argc,char *argv[]) {
 
   gras_init(&argc, argv);
   amok_bw_init();
-  amok_hm_init();
+  amok_pm_init();
  
   mysock = gras_socket_server_range(3000,9999,0,0);
   INFO1("Sensor starting (on port %d)",gras_os_myport());
   gras_os_sleep(0.5); /* let the master get ready */
   master = gras_socket_client_from_string(argv[1]);
                                              
-  amok_hm_group_join(master,"bandwidth");
-  amok_hm_mainloop(60);
+  amok_pm_group_join(master,"bandwidth");
+  amok_pm_mainloop(60);
 
   gras_socket_close(mysock);
   gras_socket_close(master);
@@ -59,12 +59,12 @@ int maestro(int argc,char *argv[]) {
    
   gras_socket_t peer;
   gras_socket_t mysock;
-  xbt_host_t h1,h2;
+  xbt_peer_t h1,h2;
   xbt_dynar_t group;
 
   gras_init(&argc, argv);
   amok_bw_init();
-  amok_hm_init();
+  amok_pm_init();
 
   INFO0("Maestro starting");
   if (argc != 2) {
@@ -72,7 +72,7 @@ int maestro(int argc,char *argv[]) {
      return 1;
   }
   mysock=gras_socket_server(atoi(argv[1]));
-  group=amok_hm_group_new("bandwidth");
+  group=amok_pm_group_new("bandwidth");
   INFO0("Wait for peers for 5 sec");
   gras_msg_handleall(5); /* friends, we're ready. Come and play */
    
@@ -80,10 +80,11 @@ int maestro(int argc,char *argv[]) {
      char *msg;
      asprintf(&msg,"Not enough peers arrived. Expected 2 got %ld",
              xbt_dynar_length(group));
+     amok_pm_group_shutdown("bandwidth");
      xbt_die(msg);
   }
-  h1 = *(xbt_host_t*) xbt_dynar_get_ptr(group, 0);
-  h2 = *(xbt_host_t*)xbt_dynar_get_ptr(group, 1);
+  h1 = *(xbt_peer_t*) xbt_dynar_get_ptr(group, 0);
+  h2 = *(xbt_peer_t*)xbt_dynar_get_ptr(group, 1);
 
   INFO2("Contact %s:%d",h1->name, h1->port);
   peer = gras_socket_client(h1->name, h1->port);
@@ -103,7 +104,7 @@ int maestro(int argc,char *argv[]) {
        sec,((double)bw)/1024.0);
 
   /* Game is over, friends */
-  amok_hm_group_shutdown ("bandwidth");
+  amok_pm_group_shutdown ("bandwidth");
 
   gras_socket_close(mysock);
   gras_exit();