X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8f9f22a96a9349e7a1e2bea57ab8cd1361b93a8a..16f1630ae434e729cbe0b24fe2f19c8f67f774cd:/src/msg/msg_legacy.cpp diff --git a/src/msg/msg_legacy.cpp b/src/msg/msg_legacy.cpp index 31239fe48a..6240acd352 100644 --- a/src/msg/msg_legacy.cpp +++ b/src/msg/msg_legacy.cpp @@ -135,6 +135,30 @@ msg_error_t MSG_process_sleep(double duration) } } +/** @brief Returns the user data of a process. + * + * This function checks whether @a process is a valid pointer and returns the user data associated to this process. + */ +void* MSG_process_get_data(msg_process_t process) +{ + xbt_assert(process != nullptr, "Invalid parameter: first parameter must not be nullptr!"); + + /* get from SIMIX the MSG process data, and then the user data */ + return sg_actor_data(process); +} + +/** @brief Sets the user data of a process. + * + * This function checks whether @a process is a valid pointer and sets the user data associated to this process. + */ +msg_error_t MSG_process_set_data(msg_process_t process, void* data) +{ + xbt_assert(process != nullptr, "Invalid parameter: first parameter must not be nullptr!"); + sg_actor_data_set(process, data); + + return MSG_OK; +} + msg_process_t MSG_process_attach(const char* name, void* data, msg_host_t host, xbt_dict_t properties) { return sg_actor_attach(name, data, host, properties); @@ -172,6 +196,21 @@ msg_process_t MSG_process_self() return sg_actor_self(); } +/** @brief Take an extra reference on that process to prevent it to be garbage-collected */ +void MSG_process_ref(msg_process_t process) +{ + sg_actor_ref(process); +} +/** @brief Release a reference on that process so that it can get be garbage-collected */ +void MSG_process_unref(msg_process_t process) +{ + sg_actor_unref(process); +} +/** @brief Return the current number MSG processes. */ +int MSG_process_get_number() +{ + return simgrid_get_actor_count(); +} /* ************************** NetZones *************************** */ sg_netzone_t MSG_zone_get_root() { @@ -271,11 +310,11 @@ const char* MSG_host_get_name(sg_host_t host) } void* MSG_host_get_data(sg_host_t host) { - return sg_host_user(host); + return sg_host_data(host); } void MSG_host_set_data(sg_host_t host, void* data) { - return sg_host_user_set(host, data); + return sg_host_data_set(host, data); } xbt_dict_t MSG_host_get_mounted_storage_list(sg_host_t host) { @@ -321,10 +360,6 @@ int MSG_host_is_on(sg_host_t h) { return sg_host_is_on(h); } -int MSG_host_is_off(sg_host_t h) // deprecated -{ - return not sg_host_is_on(h); -} xbt_dict_t MSG_host_get_properties(sg_host_t host) { return sg_host_get_properties(host);