1 /**********************************************************************/
2 /* File generated by src/simix/simcalls.py from src/simix/simcalls.in */
4 /* DO NOT EVER CHANGE THIS FILE */
6 /* change simcalls specification in src/simix/simcalls.in */
7 /* Copyright (c) 2014-2022. The SimGrid Team. All rights reserved. */
8 /**********************************************************************/
11 * Note that the name comes from http://en.wikipedia.org/wiki/Popping
12 * Indeed, the control flow is doing a strange dance in there.
14 * That's not about http://en.wikipedia.org/wiki/Poop, despite the odor :)
17 #include "src/simix/popping_private.hpp"
18 static inline simgrid::kernel::activity::CommImpl** simcall_comm_waitany__get__comms(smx_simcall_t simcall)
20 return simgrid::simix::unmarshal<simgrid::kernel::activity::CommImpl**>(simcall->args_[0]);
22 static inline simgrid::kernel::activity::CommImpl** simcall_comm_waitany__getraw__comms(smx_simcall_t simcall)
24 return simgrid::simix::unmarshal_raw<simgrid::kernel::activity::CommImpl**>(simcall->args_[0]);
26 static inline void simcall_comm_waitany__set__comms(smx_simcall_t simcall, simgrid::kernel::activity::CommImpl** arg)
28 simgrid::simix::marshal<simgrid::kernel::activity::CommImpl**>(simcall->args_[0], arg);
30 static inline size_t simcall_comm_waitany__get__count(smx_simcall_t simcall)
32 return simgrid::simix::unmarshal<size_t>(simcall->args_[1]);
34 static inline size_t simcall_comm_waitany__getraw__count(smx_simcall_t simcall)
36 return simgrid::simix::unmarshal_raw<size_t>(simcall->args_[1]);
38 static inline void simcall_comm_waitany__set__count(smx_simcall_t simcall, size_t arg)
40 simgrid::simix::marshal<size_t>(simcall->args_[1], arg);
42 static inline double simcall_comm_waitany__get__timeout(smx_simcall_t simcall)
44 return simgrid::simix::unmarshal<double>(simcall->args_[2]);
46 static inline double simcall_comm_waitany__getraw__timeout(smx_simcall_t simcall)
48 return simgrid::simix::unmarshal_raw<double>(simcall->args_[2]);
50 static inline void simcall_comm_waitany__set__timeout(smx_simcall_t simcall, double arg)
52 simgrid::simix::marshal<double>(simcall->args_[2], arg);
54 static inline ssize_t simcall_comm_waitany__get__result(smx_simcall_t simcall)
56 return simgrid::simix::unmarshal<ssize_t>(simcall->result_);
58 static inline ssize_t simcall_comm_waitany__getraw__result(smx_simcall_t simcall)
60 return simgrid::simix::unmarshal_raw<ssize_t>(simcall->result_);
62 static inline void simcall_comm_waitany__set__result(smx_simcall_t simcall, ssize_t result)
64 simgrid::simix::marshal<ssize_t>(simcall->result_, result);
67 static inline simgrid::kernel::activity::CommImpl* simcall_comm_wait__get__comm(smx_simcall_t simcall)
69 return simgrid::simix::unmarshal<simgrid::kernel::activity::CommImpl*>(simcall->args_[0]);
71 static inline simgrid::kernel::activity::CommImpl* simcall_comm_wait__getraw__comm(smx_simcall_t simcall)
73 return simgrid::simix::unmarshal_raw<simgrid::kernel::activity::CommImpl*>(simcall->args_[0]);
75 static inline void simcall_comm_wait__set__comm(smx_simcall_t simcall, simgrid::kernel::activity::CommImpl* arg)
77 simgrid::simix::marshal<simgrid::kernel::activity::CommImpl*>(simcall->args_[0], arg);
79 static inline double simcall_comm_wait__get__timeout(smx_simcall_t simcall)
81 return simgrid::simix::unmarshal<double>(simcall->args_[1]);
83 static inline double simcall_comm_wait__getraw__timeout(smx_simcall_t simcall)
85 return simgrid::simix::unmarshal_raw<double>(simcall->args_[1]);
87 static inline void simcall_comm_wait__set__timeout(smx_simcall_t simcall, double arg)
89 simgrid::simix::marshal<double>(simcall->args_[1], arg);
92 static inline std::function<void()> const* simcall_run_kernel__get__code(smx_simcall_t simcall)
94 return simgrid::simix::unmarshal<std::function<void()> const*>(simcall->args_[0]);
96 static inline std::function<void()> const* simcall_run_kernel__getraw__code(smx_simcall_t simcall)
98 return simgrid::simix::unmarshal_raw<std::function<void()> const*>(simcall->args_[0]);
100 static inline void simcall_run_kernel__set__code(smx_simcall_t simcall, std::function<void()> const* arg)
102 simgrid::simix::marshal<std::function<void()> const*>(simcall->args_[0], arg);
105 static inline std::function<void()> const* simcall_run_blocking__get__code(smx_simcall_t simcall)
107 return simgrid::simix::unmarshal<std::function<void()> const*>(simcall->args_[0]);
109 static inline std::function<void()> const* simcall_run_blocking__getraw__code(smx_simcall_t simcall)
111 return simgrid::simix::unmarshal_raw<std::function<void()> const*>(simcall->args_[0]);
113 static inline void simcall_run_blocking__set__code(smx_simcall_t simcall, std::function<void()> const* arg)
115 simgrid::simix::marshal<std::function<void()> const*>(simcall->args_[0], arg);
118 /* The prototype of all simcall handlers, automatically generated for you */
120 XBT_PRIVATE void simcall_HANDLER_comm_waitany(smx_simcall_t simcall, simgrid::kernel::activity::CommImpl** comms, size_t count, double timeout);
121 XBT_PRIVATE void simcall_HANDLER_comm_wait(smx_simcall_t simcall, simgrid::kernel::activity::CommImpl* comm, double timeout);