BPMN-OS
BPMN for optimization and simulation
Loading...
Searching...
No Matches
Gatekeeper.h
Go to the documentation of this file.
1#ifndef BPMNOS_Model_Gatekeeper_H
2#define BPMNOS_Model_Gatekeeper_H
3
4#include <memory>
5#include <vector>
6#include <string>
7#include <bpmn++.h>
8#include "Restriction.h"
10
11namespace BPMNOS::Model {
12
13
14/**
15 * @brief Class holding extension elements representing gatekeeper conditions for sequence flows
16 **/
18public:
21 std::vector< std::unique_ptr<Restriction> > conditions;
22
23 template <typename DataType>
24 bool conditionsSatisfied(const BPMNOS::Values& status, const DataType& data, const BPMNOS::Values& globals) const;
25};
26
27
28} // namespace BPMNOS::Model
29
30#endif // BPMNOS_Model_Gatekeeper_H
Class holding extension elements representing gatekeeper conditions for sequence flows.
Definition Gatekeeper.h:17
std::vector< std::unique_ptr< Restriction > > conditions
Definition Gatekeeper.h:21
const BPMN::Scope * parent
Definition Gatekeeper.h:20
bool conditionsSatisfied(const BPMNOS::Values &status, const DataType &data, const BPMNOS::Values &globals) const
Gatekeeper(XML::bpmn::tBaseElement *baseElement, BPMN::Scope *parent)
Definition Gatekeeper.cpp:8
Base class for extension elements that may be provided for a BPMN element.
Definition bpmn++.h:16358
BaseElement * baseElement
Reference to the base element the extension elements are bound to.
Definition bpmn++.h:16391
Base class for BPMN elements that may contain a ChildNode elements.
Definition bpmn++.h:16510