BPMN-OS
BPMN for optimization and simulation
Loading...
Searching...
No Matches
ExitDecision.h
Go to the documentation of this file.
1#ifndef BPMNOS_Execution_ExitDecision_H
2#define BPMNOS_Execution_ExitDecision_H
3
4#include <bpmn++.h>
8
9namespace BPMNOS::Execution {
10
11/**
12 * @brief Represents the event of a token exiting a node.
13 *
14 * Transition from State::COMPLETION to State::DONE or State::DEPARTED
15 */
18 std::optional<double> evaluate() override;
19
20 nlohmann::ordered_json jsonify() const override;
21};
22
23} // namespace BPMNOS::Execution
24
25#endif // BPMNOS_Execution_ExitDecision_H
26
Represents an abstract base class for a pending decision.
Definition Decision.h:15
Represents an abstract base class for a pending Evaluator.
Definition Evaluator.h:15
Represents a token running through a (sub)process.
Definition Token.h:35
const Token * token
Definition Event.h:18
Represents the event of a token exiting a node.
nlohmann::ordered_json jsonify() const override
std::optional< double > evaluate() override
Evaluates the reward for the decision. Returns null if decision is infeasible.
ExitDecision(const Token *token, Evaluator *evaluator)
Represents the event of a token exiting a node.
Definition ExitEvent.h:15