X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b37127a6689ffbb75a19fa61f9cf0c2253960d4d..d15a4cc7241eb025d70551d1fd7eff95d99bf167:/src/bindings/ruby/rb_msg_host.c diff --git a/src/bindings/ruby/rb_msg_host.c b/src/bindings/ruby/rb_msg_host.c index 27eefcefe2..cae895f669 100644 --- a/src/bindings/ruby/rb_msg_host.c +++ b/src/bindings/ruby/rb_msg_host.c @@ -1,32 +1,33 @@ -#include "rb_msg_host.h" +/* + * Copyright 2010. The SimGrid Team. All right reserved. + * + * This program is free software; you can redistribute + * it and/or modify it under the terms of the license + *(GNU LGPL) which comes with this package. + */ +#include "bindings/ruby_bindings.h" // Free Method -static void host_free(m_host_t ht) { +void rb_host_free(m_host_t ht) { //Nothing to do !!? } - // New Method : return a Host -static VALUE host_get_by_name(VALUE class, VALUE name) -{ +VALUE rb_host_get_by_name(VALUE class, VALUE name) { - m_host_t host = MSG_get_host_by_name(RSTRING(name)->ptr); + const char * h_name = RSTRING(name)->ptr; + m_host_t host = MSG_get_host_by_name(h_name); if(!host) - rb_raise(rb_eRuntimeError,"MSG_get_host_by_name() failled"); - return Data_Wrap_Struct(class, 0, host_free, host); + return Data_Wrap_Struct(class,0,host_free,host); } - //Get Name - -static VALUE host_name(VALUE class,VALUE host) -{ +VALUE rb_host_name(VALUE class,VALUE host) { // Wrap Ruby Value to m_host_t struct - m_host_t ht; Data_Get_Struct(host, m_host_t, ht); return rb_str_new2(MSG_host_get_name(ht)); @@ -34,47 +35,36 @@ static VALUE host_name(VALUE class,VALUE host) } // Get Number -static VALUE host_number(VALUE class) -{ - - return MSG_get_host_number(); +VALUE rb_host_number(VALUE class) { + + return INT2NUM(MSG_get_host_number()); } // Host Speed ( Double ) -static VALUE host_speed(VALUE class,VALUE host) -{ +VALUE rb_host_speed(VALUE class,VALUE host) { m_host_t ht ; Data_Get_Struct(host,m_host_t,ht); return MSG_get_host_speed(ht); } - // Host Set Data -static void host_set_data(VALUE class,VALUE host,VALUE data) -{ +void rb_host_set_data(VALUE class,VALUE host,VALUE data) { //... } // Host Get Data -static VALUE host_get_data(VALUE class,VALUE host) -{ +VALUE rb_host_get_data(VALUE class,VALUE host) { //... return Qnil; } - - - // Host is Avail -static VALUE host_is_avail(VALUE class,VALUE host) -{ - +VALUE rb_host_is_avail(VALUE class,VALUE host) { m_host_t ht; Data_Get_Struct(host,m_host_t,ht); - if (!ht) - { + if (!ht) { rb_raise(rb_eRuntimeError,"Host not Bound"); return Qnil; }