X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/fef3a9cd33671bf0ee919fb90e2fd6f3d3d59d3c..878020909e91d141e57373397d8dede76c5fde03:/src/simix/smx_private.hpp diff --git a/src/simix/smx_private.hpp b/src/simix/smx_private.hpp index a6051cc82c..255105fca2 100644 --- a/src/simix/smx_private.hpp +++ b/src/simix/smx_private.hpp @@ -9,6 +9,7 @@ #include #include "smx_private.h" +#include "src/simix/popping_private.h" /** * \brief destroy a context @@ -77,6 +78,15 @@ XBT_PRIVATE ContextFactory* sysv_factory(); XBT_PRIVATE ContextFactory* raw_factory(); XBT_PRIVATE ContextFactory* boost_factory(); +template inline +R simcall(e_smx_simcall_t call, Args&&... args) +{ + smx_process_t self = SIMIX_process_self(); + marshal(&self->simcall, call, std::forward(args)...); + simcall_call(self); + return unmarshal(self->simcall.result); +} + } }