11 #ifndef WRENCH_ACTION_ACTION_EXECUTION_SERVICE_MESSAGE_H
12 #define WRENCH_ACTION_ACTION_EXECUTION_SERVICE_MESSAGE_H
16 #include "wrench/services/helper_services/action_execution_service/ActionExecutionService.h"
17 #include "wrench/services/ServiceMessage.h"
32 class ActionExecutionServiceMessage :
public SimulationMessage {
34 ActionExecutionServiceMessage(
double payload);
40 class ActionExecutionServiceSubmitActionRequestMessage :
public ActionExecutionServiceMessage {
42 ActionExecutionServiceSubmitActionRequestMessage(
43 simgrid::s4u::Mailbox *reply_mailbox,
44 std::shared_ptr<Action> action,
48 std::shared_ptr<Action> action;
50 simgrid::s4u::Mailbox *reply_mailbox;
56 class ActionExecutionServiceSubmitActionAnswerMessage :
public ActionExecutionServiceMessage {
58 ActionExecutionServiceSubmitActionAnswerMessage(
60 std::shared_ptr<FailureCause> cause,
66 std::shared_ptr<FailureCause> cause;
72 class ActionExecutionServiceTerminateActionRequestMessage :
public ActionExecutionServiceMessage {
74 ActionExecutionServiceTerminateActionRequestMessage(
75 simgrid::s4u::Mailbox *reply_mailbox,
76 std::shared_ptr<Action> action,
81 simgrid::s4u::Mailbox *reply_mailbox;
83 std::shared_ptr<Action> action;
91 class ActionExecutionServiceTerminateActionAnswerMessage :
public ActionExecutionServiceMessage {
93 ActionExecutionServiceTerminateActionAnswerMessage(
95 std::shared_ptr<FailureCause> cause,
101 std::shared_ptr<FailureCause> cause;
107 class ActionExecutionServiceActionDoneMessage :
public ActionExecutionServiceMessage {
109 ActionExecutionServiceActionDoneMessage(
110 std::shared_ptr<Action> action,
114 std::shared_ptr<Action> action;
124 #endif //WRENCH_ACTION_ACTION_EXECUTION_SERVICE_MESSAGE_H