MessageManager.h
1 
10 #ifndef WRENCH_MESSAGEMANAGER_H
11 #define WRENCH_MESSAGEMANAGER_H
12 
13 #include <unordered_set>
14 
15 #include <wrench/services/Service.h>
16 #include <wrench/simulation/SimulationMessage.h>
17 
18 namespace wrench {
19 
20  /***********************/
22  /***********************/
23 
30 
31  static std::map<std::string,std::unordered_set<SimulationMessage*>> mailbox_messages;
32 
33  public:
34 
35  static void manageMessage(std::string, SimulationMessage* msg);
36  static void cleanUpMessages(std::string);
37  static void removeReceivedMessages(std::string,SimulationMessage* msg);
38  static void cleanUpAllMessages();
39 
40  };
41 
42  /***********************/
44  /***********************/
45 }
46 
47 
48 #endif //WRENCH_MESSAGEMANAGER_H
static void cleanUpMessages(std::string)
Clean up messages for a given mailbox (so as to free up memory)
Definition: MessageManager.cpp:42
static void cleanUpAllMessages()
Clean up all the messages that MessageManager has stored (so as to free up memory) ...
Definition: MessageManager.cpp:54
Top-level class to describe a message communicated by processes in the simulation.
Definition: SimulationMessage.h:27
static void removeReceivedMessages(std::string, SimulationMessage *msg)
Remove a received message from the "database" of messages.
Definition: MessageManager.cpp:66
static void manageMessage(std::string, SimulationMessage *msg)
Insert a message in the manager&#39;s "database".
Definition: MessageManager.cpp:26
Definition: TerminalOutput.cpp:15
A helper class that manages messages (in terms of memory deallocation to avoid leaks when a message w...
Definition: MessageManager.h:29