X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/03847b386b2035bec76237eab400aeaf07466496..d9d29f9c45022aeb18af277c995291c0547bbc0d:/src/msg/msg_process.cpp diff --git a/src/msg/msg_process.cpp b/src/msg/msg_process.cpp index d68bad5f40..17b02ef0d2 100644 --- a/src/msg/msg_process.cpp +++ b/src/msg/msg_process.cpp @@ -10,7 +10,7 @@ #include "xbt/sysdep.h" #include "xbt/log.h" #include "xbt/functional.hpp" -#include "src/simix/smx_process_private.h" +#include "src/simix/ActorImpl.hpp" #include "src/simix/smx_private.h" XBT_LOG_NEW_DEFAULT_SUBCATEGORY(msg_process, msg, "Logging specific to MSG (process)"); @@ -29,7 +29,7 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(msg_process, msg, "Logging specific to MSG (proc * \brief Cleans the MSG data of a process. * \param smx_proc a SIMIX process */ -void MSG_process_cleanup_from_SIMIX(smx_process_t smx_proc) +void MSG_process_cleanup_from_SIMIX(smx_actor_t smx_proc) { simdata_process_t msg_proc; @@ -55,10 +55,10 @@ void MSG_process_cleanup_from_SIMIX(smx_process_t smx_proc) } /* This function creates a MSG process. It has the prototype enforced by SIMIX_function_register_process_create */ -smx_process_t MSG_process_create_from_SIMIX( +smx_actor_t MSG_process_create_from_SIMIX( const char *name, std::function code, void *data, const char *hostname, double kill_time, xbt_dict_t properties, - int auto_restart, smx_process_t parent_process) + int auto_restart, smx_actor_t parent_process) { msg_host_t host = MSG_host_by_name(hostname); msg_process_t p = MSG_process_create_with_environment( @@ -214,7 +214,7 @@ msg_process_t MSG_process_attach(const char *name, void *data, msg_host_t host, * Used in the main thread, it waits for the simulation to finish before returning. When it returns, the other * simulated processes and the maestro are destroyed. */ -void MSG_process_detach(void) +void MSG_process_detach() { SIMIX_process_detach(); } @@ -332,12 +332,12 @@ msg_process_t MSG_process_from_PID(int PID) } /** @brief returns a list of all currently existing processes */ -xbt_dynar_t MSG_processes_as_dynar(void) { +xbt_dynar_t MSG_processes_as_dynar() { return SIMIX_processes_as_dynar(); } /** @brief Return the current number MSG processes. */ -int MSG_process_get_number(void) +int MSG_process_get_number() { return SIMIX_process_count(); } @@ -363,10 +363,9 @@ int MSG_process_get_PID(msg_process_t process) { /* Do not raise an exception here: this function is called by the logs * and the exceptions, so it would be called back again and again */ - if (process == nullptr) { + if (process == nullptr) return 0; - } - return simcall_process_get_PID(process); + return process->pid; } /** \ingroup m_process_management @@ -377,8 +376,7 @@ int MSG_process_get_PID(msg_process_t process) */ int MSG_process_get_PPID(msg_process_t process) { - xbt_assert(process != nullptr, "Invalid parameter: First argument must not be nullptr"); - return simcall_process_get_PPID(process); + return process->ppid; } /** \ingroup m_process_management @@ -419,7 +417,7 @@ xbt_dict_t MSG_process_get_properties(msg_process_t process) * * This function returns the PID of the currently running #msg_process_t. */ -int MSG_process_self_PID(void) +int MSG_process_self_PID() { return MSG_process_get_PID(MSG_process_self()); } @@ -429,7 +427,7 @@ int MSG_process_self_PID(void) * * This function returns the PID of the parent of the currently running #msg_process_t. */ -int MSG_process_self_PPID(void) +int MSG_process_self_PPID() { return MSG_process_get_PPID(MSG_process_self()); } @@ -439,7 +437,7 @@ int MSG_process_self_PPID(void) * * This function returns the currently running #msg_process_t. */ -msg_process_t MSG_process_self(void) +msg_process_t MSG_process_self() { return SIMIX_process_self(); }