Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
fixing some privacy violation ( no more #include "msg/private.h") in ruby bindings...
[simgrid.git] / src / bindings / ruby / rb_msg_host.c
index 5320265..64f16b4 100644 (file)
@@ -76,6 +76,22 @@ VALUE rb_host_process(VALUE class,VALUE ruby_process)
   host = MSG_process_get_host(process);
   
   return Data_Wrap_Struct(class, 0, rb_host_free, host); 
-  
-  
-}
\ No newline at end of file
+
+}
+
+// get all hosts
+VALUE rb_host_get_all_hosts(VALUE class)
+{
+       int nb,index;
+       m_host_t *hosts;
+       VALUE rb_hosts;
+       nb = MSG_get_host_number();
+       hosts  = MSG_get_host_table();
+    rb_hosts = rb_ary_new2(nb);
+
+    for(index=0 ; index<nb; index++)
+       rb_ary_push(rb_hosts,Data_Wrap_Struct(class, 0, rb_host_free, hosts[index]));
+
+    return rb_hosts;
+}
+