X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/94cee0547a96ae874c04f2435c9e326c5a3f474e..7369715466314d1ab38ee29586b632717c98fcad:/src/s4u/s4u_Comm.cpp diff --git a/src/s4u/s4u_Comm.cpp b/src/s4u/s4u_Comm.cpp index 00c6bcf9c9..36b5702cbf 100644 --- a/src/s4u/s4u_Comm.cpp +++ b/src/s4u/s4u_Comm.cpp @@ -297,6 +297,16 @@ Actor* Comm::get_sender() const return sender ? sender->get_ciface() : nullptr; } +CommPtr Comm::set_copy_data_callback(void (*callback)(kernel::activity::CommImpl*, void*, size_t)) +{ + static void (*saved_callback)(kernel::activity::CommImpl*, void*, size_t); + saved_callback = callback; + copy_data_function_ = [](simgrid::kernel::activity::CommImpl* comm, void* buff, size_t size) { + saved_callback(comm, buff, size); + }; + return this; +} + } // namespace s4u } // namespace simgrid /* **************************** Public C interface *************************** */