X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d20f024dba9ff1e9c8822237caaf963b9e913889..6e6af9ba860e3f607fddcdfbda94c44f8f1becbb:/src/msg/msg_private.hpp diff --git a/src/msg/msg_private.hpp b/src/msg/msg_private.hpp index e7d1ef9953..62b4285340 100644 --- a/src/msg/msg_private.hpp +++ b/src/msg/msg_private.hpp @@ -27,11 +27,12 @@ public: } /********************************* Task **************************************/ -typedef struct simdata_task { - ~simdata_task() +struct s_simdata_task_t { + ~s_simdata_task_t() { /* parallel tasks only */ - xbt_free(this->host_list); + delete[] this->host_list; + /* flops_parallel_amount and bytes_parallel_amount are automatically deleted in ~L07Action */ } void setUsed(); void setNotUsed() { this->isused = false; } @@ -57,7 +58,7 @@ typedef struct simdata_task { private: void reportMultipleUse() const; -} s_simdata_task_t; +}; /******************************* Process *************************************/ @@ -85,14 +86,18 @@ public: } /************************** Global variables ********************************/ -typedef struct MSG_Global { +struct s_MSG_Global_t { int debug_multiple_use; /* whether we want an error message when reusing the same Task for 2 things */ std::atomic_int_fast32_t sent_msg; /* Total amount of messages sent during the simulation */ void (*task_copy_callback)(msg_task_t task, msg_process_t src, msg_process_t dst); void_f_pvoid_t process_data_cleanup; -} s_MSG_Global_t; +}; typedef s_MSG_Global_t* MSG_Global_t; +XBT_PRIVATE std::string instr_pid(msg_process_t proc); +XBT_PRIVATE void TRACE_msg_process_create(std::string process_name, int process_pid, msg_host_t host); +XBT_PRIVATE void TRACE_msg_process_destroy(std::string process_name, int process_pid); + extern "C" { XBT_PUBLIC_DATA(MSG_Global_t) msg_global; @@ -114,17 +119,13 @@ XBT_PRIVATE void TRACE_msg_task_create(msg_task_t task); XBT_PRIVATE void TRACE_msg_task_execute_start(msg_task_t task); XBT_PRIVATE void TRACE_msg_task_execute_end(msg_task_t task); XBT_PRIVATE void TRACE_msg_task_destroy(msg_task_t task); -XBT_PRIVATE void TRACE_msg_task_get_end(double start_time, msg_task_t task); +XBT_PRIVATE void TRACE_msg_task_get_end(msg_task_t task); XBT_PRIVATE void TRACE_msg_task_get_start(); XBT_PRIVATE int TRACE_msg_task_put_start(msg_task_t task); // returns TRUE if the task_put_end must be called XBT_PRIVATE void TRACE_msg_task_put_end(); /* declaration of instrumentation functions from msg_process_instr.c */ -XBT_PRIVATE char* instr_process_id(msg_process_t proc, char* str, int len); -XBT_PRIVATE char* instr_process_id_2(const char* process_name, int process_pid, char* str, int len); XBT_PRIVATE void TRACE_msg_process_change_host(msg_process_t process, msg_host_t new_host); -XBT_PRIVATE void TRACE_msg_process_create(const char* process_name, int process_pid, msg_host_t host); -XBT_PRIVATE void TRACE_msg_process_destroy(const char* process_name, int process_pid); XBT_PRIVATE void TRACE_msg_process_kill(smx_process_exit_status_t status, msg_process_t process); XBT_PRIVATE void TRACE_msg_process_suspend(msg_process_t process); XBT_PRIVATE void TRACE_msg_process_resume(msg_process_t process); @@ -132,7 +133,7 @@ XBT_PRIVATE void TRACE_msg_process_sleep_in(msg_process_t process); // called fr XBT_PRIVATE void TRACE_msg_process_sleep_out(msg_process_t process); } -inline void simdata_task::setUsed() +inline void s_simdata_task_t::setUsed() { if (this->isused) this->reportMultipleUse();