Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
sg_functions should be wrapping the C++ public API, not internals
authorMartin Quinson <martin.quinson@loria.fr>
Mon, 11 Jan 2016 23:44:21 +0000 (00:44 +0100)
committerMartin Quinson <martin.quinson@loria.fr>
Mon, 11 Jan 2016 23:54:32 +0000 (00:54 +0100)
include/simgrid/host.h
src/include/surf/surf.h
src/simgrid/host.cpp
src/surf/surf_c_bindings.cpp

index 61e1611..3de3905 100644 (file)
@@ -60,6 +60,7 @@ XBT_PUBLIC(int) sg_host_is_on(sg_host_t host);
 XBT_PUBLIC(int) sg_host_get_nb_pstates(sg_host_t host);
 XBT_PUBLIC(int) sg_host_get_pstate(sg_host_t host);
 XBT_PUBLIC(void) sg_host_set_pstate(sg_host_t host,int pstate);
+XBT_PUBLIC(xbt_dict_t) sg_host_get_properties(sg_host_t host);
 
 SG_END_DECL()
 
index 14af542..84b400d 100644 (file)
@@ -297,9 +297,6 @@ static inline const char * surf_cpu_name(surf_cpu_t cpu) {
        return surf_resource_name((surf_cpp_resource_t)cpu);
 }
 
-/** @brief Get the properties of an host */
-XBT_PUBLIC(xbt_dict_t) sg_host_get_properties(sg_host_t host);
-
 /** @brief Get the available speed of cpu associated to a host */
 XBT_PUBLIC(double) surf_host_get_available_speed(sg_host_t host);
 
index 236376b..482f21f 100644 (file)
@@ -162,6 +162,12 @@ void sg_host_set_pstate(sg_host_t host,int pstate) {
   host->setPState(pstate);
 }
 
+/** @brief Get the properties of an host */
+xbt_dict_t sg_host_get_properties(sg_host_t host) {
+  return host->getProperties();
+}
+
+
 namespace simgrid {
 
 Host::Host(std::string const& id)
@@ -196,7 +202,7 @@ bool Host::isOff() {
 /** Get the properties assigned to a host */
 xbt_dict_t Host::getProperties()
 {
-  return simgrid::simix::kernel(std::bind(sg_host_get_properties, this));
+  return simgrid::simix::kernel(std::bind(&simgrid::surf::Host::getProperties, this->extension(simgrid::surf::Host::EXTENSION_ID)));
 }
 
 /** Get the processes attached to the host */
index 37ed364..365ce8a 100644 (file)
@@ -245,9 +245,6 @@ surf_action_t surf_host_sleep(sg_host_t host, double duration){
        return host->pimpl_cpu->sleep(duration);
 }
 
-xbt_dict_t sg_host_get_properties(sg_host_t host) {
-       return get_casted_host(host)->getProperties();
-}
 
 double surf_host_get_available_speed(sg_host_t host){
   return host->pimpl_cpu->getAvailableSpeed();