11 #ifndef WRENCH_S4U_MAILBOX_H
12 #define WRENCH_S4U_MAILBOX_H
19 #include <simgrid/s4u.hpp>
27 class SimulationMessage;
28 class S4U_PendingCommunication;
36 static std::unique_ptr<SimulationMessage> getMessage(std::string mailbox);
37 static std::unique_ptr<SimulationMessage> getMessage(std::string mailbox,
double timeout);
38 static void putMessage(std::string mailbox, SimulationMessage *m);
39 static void dputMessage(std::string mailbox_name, SimulationMessage *msg);
40 static std::shared_ptr<S4U_PendingCommunication> iputMessage(std::string mailbox_name, SimulationMessage *msg);
41 static std::shared_ptr<S4U_PendingCommunication> igetMessage(std::string mailbox_name);
44 static std::string generateUniqueMailboxName(std::string);
45 static unsigned long generateUniqueSequenceNumber();
60 #endif //WRENCH_S4U_MAILBOX_H