X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/be6e8d3215d3e25f48c7d2d0b359cf178f978d41..301989b17111d6a39df60385a4c2e73fcff8cd86:/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); +} + } }