-/** \ingroup m_process_management
- * \brief Return the list of properties
- *
- * This function returns all the parameters associated with a process
- */
-xbt_dict_t MSG_process_get_properties(msg_process_t process)
-{
- xbt_assert(process != nullptr, "Invalid parameter: First argument must not be nullptr");
- return simcall_process_get_properties(process->getImpl());
-}
-
-/** \ingroup m_process_management
- * \brief Return the PID of the current process.
- *
- * This function returns the PID of the currently running #msg_process_t.
- */
-int MSG_process_self_PID()
-{
- smx_actor_t self = SIMIX_process_self();
- return self == nullptr ? 0 : self->pid;
-}
-
-/** \ingroup m_process_management
- * \brief Return the PPID of the current process.
- *
- * This function returns the PID of the parent of the currently running #msg_process_t.
- */
-int MSG_process_self_PPID()
-{
- return MSG_process_get_PPID(MSG_process_self());
-}
-
-/** \ingroup m_process_management
- * \brief Return the name of the current process.
- */
-const char* MSG_process_self_name()
-{
- return SIMIX_process_self_get_name();
-}
-
-/** \ingroup m_process_management
- * \brief Return the current process.
- *
- * This function returns the currently running #msg_process_t.
- */
-msg_process_t MSG_process_self()
-{
- return SIMIX_process_self()->ciface();
-}
-
-/** \ingroup m_process_management
- * \brief Suspend the process.
- *
- * This function suspends the process by suspending the task on which it was waiting for the completion.
- */
-msg_error_t MSG_process_suspend(msg_process_t process)
-{
- xbt_assert(process != nullptr, "Invalid parameter: First argument must not be nullptr");
-
- TRACE_msg_process_suspend(process);
- simcall_process_suspend(process->getImpl());
- return MSG_OK;
-}
-
-/** \ingroup m_process_management
- * \brief Resume a suspended process.
- *
- * This function resumes a suspended process by resuming the task on which it was waiting for the completion.
- */
-msg_error_t MSG_process_resume(msg_process_t process)
-{
- xbt_assert(process != nullptr, "Invalid parameter: First argument must not be nullptr");
-
- TRACE_msg_process_resume(process);
- process->resume();
- return MSG_OK;
-}
-
-/** \ingroup m_process_management
- * \brief Returns true if the process is suspended .
- *
- * This checks whether a process is suspended or not by inspecting the task on which it was waiting for the completion.
- */
-int MSG_process_is_suspended(msg_process_t process)
-{
- return process->isSuspended();
-}
-
-smx_context_t MSG_process_get_smx_ctx(msg_process_t process) {
- return process->getImpl()->context;
-}
-/**
- * \ingroup m_process_management
- * \brief Add a function to the list of "on_exit" functions for the current process.
- * The on_exit functions are the functions executed when your process is killed.
- * You should use them to free the data used by your process.
- */
-void MSG_process_on_exit(int_f_pvoid_pvoid_t fun, void *data) {
- simcall_process_on_exit(SIMIX_process_self(), fun, data);
-}
-/**
- * \ingroup m_process_management
- * \brief Sets the "auto-restart" flag of the process.
- * If the flag is set to 1, the process will be automatically restarted when its host comes back up.
- */
-XBT_PUBLIC(void) MSG_process_auto_restart_set(msg_process_t process, int auto_restart) {
- process->setAutoRestart(auto_restart);
-}
-/**
- * \ingroup m_process_management
- * \brief Restarts a process from the beginning.
- */
-XBT_PUBLIC(msg_process_t) MSG_process_restart(msg_process_t process) {
- return simgrid::simix::kernelImmediate(
- [process]() { return process->getImpl()->restart(process->getImpl())->ciface(); });
-}
-
-/** @ingroup m_process_management
- * @brief This process will be terminated automatically when the last non-daemon process finishes
- */
-XBT_PUBLIC(void) MSG_process_daemonize(msg_process_t process)
-{
- simgrid::simix::kernelImmediate([process]() { process->getImpl()->daemonize(); });
-}
-
-/** @ingroup m_process_management
- * @brief Take an extra reference on that process to prevent it to be garbage-collected
- */
-XBT_PUBLIC(void) MSG_process_ref(msg_process_t process)