X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5aaf4dee2a063da0b9e1dc52672872a43a0a8e10..c7d4536a8384832da2a1d7b9bb9109100aaa0eb2:/src/simix/smx_network_private.h diff --git a/src/simix/smx_network_private.h b/src/simix/smx_network_private.h index 1451a8e1cf..420e31e303 100644 --- a/src/simix/smx_network_private.h +++ b/src/simix/smx_network_private.h @@ -9,16 +9,17 @@ #include #include +#include #include "simgrid/simix.h" #include "popping_private.h" /** @brief Rendez-vous point datatype */ typedef struct s_smx_mailbox { - char *name; - std::deque *comm_queue; - smx_process_t permanent_receiver; //process which the mailbox is attached to - std::deque *done_comm_queue;//messages already received in the permanent receive mode + char *name = nullptr; + std::deque *comm_queue = nullptr; + boost::intrusive_ptr permanent_receiver; //process which the mailbox is attached to + std::deque *done_comm_queue = nullptr;//messages already received in the permanent receive mode } s_smx_mailbox_t; XBT_PRIVATE void SIMIX_mailbox_exit(void); @@ -30,12 +31,10 @@ XBT_PRIVATE void SIMIX_mbox_remove(smx_mailbox_t mbox, smx_synchro_t comm); XBT_PRIVATE void SIMIX_mbox_set_receiver(smx_mailbox_t mbox, smx_process_t proc); XBT_PRIVATE smx_synchro_t SIMIX_comm_irecv(smx_process_t dst_proc, smx_mailbox_t mbox, void *dst_buff, size_t *dst_buff_size, - int (*)(void *, void *, smx_synchro_t), + int (*match_fun)(void *, void *, smx_synchro_t), void (*copy_data_fun)(smx_synchro_t, void*, size_t), void *data, double rate); XBT_PRIVATE smx_synchro_t SIMIX_comm_iprobe(smx_process_t dst_proc, smx_mailbox_t mbox, int type, int src, int tag, int (*match_fun)(void *, void *, smx_synchro_t), void *data); -XBT_PRIVATE void SIMIX_post_comm(smx_synchro_t synchro); #endif -