|
BPMN-OS
BPMN for optimization and simulation
|
Definition at line 32 of file DynamicScenario.h.
#include <DynamicScenario.h>
Public Member Functions | |
| DynamicScenario (const Model *model, BPMNOS::number earliestInstantiationTime, BPMNOS::number latestInstantiationTime, const std::unordered_map< const Attribute *, BPMNOS::number > &globalValueMap) | |
| BPMNOS::number | getEarliestInstantiationTime () const override |
| Method returning the time of the earliest instantiation. | |
| bool | isCompleted (const BPMNOS::number currentTime) const override |
| Method returning true if the currentTime exceeds the completion time. | |
| std::vector< std::tuple< const BPMN::Process *, BPMNOS::Values, BPMNOS::Values > > | getCurrentInstantiations (const BPMNOS::number currentTime) const override |
| Method returning a vector of all instances that are known to be instantiated at the given time. | |
| std::vector< const InstanceData * > | getCreatedInstances (const BPMNOS::number currentTime) const override |
| Method returning a vector of all instances that have been created until the given time. | |
| std::vector< const InstanceData * > | getKnownInstances (const BPMNOS::number currentTime) const override |
| Method returning a vector of all instances that have been created or are known for sure until the given time. | |
| std::optional< BPMNOS::number > | getKnownValue (const Scenario::InstanceData *instance, const BPMNOS::Model::Attribute *attribute, const BPMNOS::number currentTime) const override |
| Method returning a known value of an attribute. | |
| std::optional< BPMNOS::number > | getKnownValue (const BPMNOS::number instanceId, const BPMNOS::Model::Attribute *attribute, const BPMNOS::number currentTime) const override |
| Method returning a known value of an attribute. | |
| std::optional< BPMNOS::Values > | getKnownValues (const BPMNOS::number instanceId, const BPMN::Node *node, const BPMNOS::number currentTime) const override |
| Method returning all known values of new attributes. | |
| std::optional< BPMNOS::Values > | getKnownData (const BPMNOS::number instanceId, const BPMN::Node *node, const BPMNOS::number currentTime) const override |
| Method returning all known values of new attributes. | |
| void | revealData (BPMNOS::number currentTime) const |
Public Member Functions inherited from BPMNOS::Model::Scenario | |
| virtual | ~Scenario ()=default |
| const Model * | getModel () const |
| Method returning the model. | |
| virtual void | setTaskCompletionStatus (const BPMNOS::number instanceId, const BPMN::Node *task, BPMNOS::Values status) const |
| Store the completion status when a task enters BUSY state. | |
| virtual BPMNOS::Values | getTaskCompletionStatus (const BPMNOS::number instanceId, const BPMN::Node *task) const |
| Get the completion status for a task. | |
| virtual void | initializeArrivalData (BPMNOS::number instanceId, const BPMN::Node *node, const Values &status, const Values &data, const Values &globals) const |
| Initialize arrival data when a token arrives at an activity. | |
Protected Member Functions | |
| Values | getKnownInitialStatus (const InstanceData *, const BPMNOS::number time) const override |
| Method returning the initial status attributes for process instantiation. | |
| Values | getKnownInitialData (const InstanceData *, const BPMNOS::number time) const override |
| Method returning the initial data attributes for process instantiation. | |
| void | addInstance (const BPMN::Process *process, const BPMNOS::number instanceId, BPMNOS::number instantiationTime) |
| void | setValue (const BPMNOS::number instanceId, const Attribute *attribute, std::optional< BPMNOS::number > value) |
| void | setDisclosure (const BPMNOS::number instanceId, const BPMN::Node *node, BPMNOS::number disclosureTime) |
| void | addPendingDisclosure (const BPMNOS::number instanceId, PendingDisclosure &&pending) |
Protected Member Functions inherited from BPMNOS::Model::Scenario | |
Protected Attributes | |
| std::unordered_map< size_t, InstanceData > | instances |
| std::unordered_map< size_t, std::unordered_map< const BPMN::Node *, BPMNOS::number > > | disclosure |
| Instance ID -> Node -> time when node's data is disclosed. | |
| std::unordered_map< size_t, std::vector< PendingDisclosure > > | pendingDisclosures |
| Instance ID -> pending disclosures. | |
| std::set< std::pair< size_t, const Attribute * > > | disclosedAttributes |
| Track which attributes have been disclosed. | |
| BPMNOS::number | earliestInstantiationTime |
| BPMNOS::number | latestInstantiationTime |
Friends | |
| class | DynamicDataProvider |
Additional Inherited Members | |
Public Attributes inherited from BPMNOS::Model::Scenario | |
| BPMNOS::Values | globals |
| std::map< std::pair< size_t, const BPMN::Node * >, BPMNOS::Values > | taskCompletionStatus |
| Stored completion status per (instanceId, task) | |
| const Model * | model |
| Pointer to the BPMN model. | |
Static Public Attributes inherited from BPMNOS::Model::Scenario | |
| static constexpr char | delimiters [] = {'^','#'} |
| Delimiters used for disambiguation of identifiers of non-interrupting event subprocesses and multi-instance activities. | |
| DynamicScenario::DynamicScenario | ( | const Model * | model, |
| BPMNOS::number | earliestInstantiationTime, | ||
| BPMNOS::number | latestInstantiationTime, | ||
| const std::unordered_map< const Attribute *, BPMNOS::number > & | globalValueMap ) |
Definition at line 7 of file DynamicScenario.cpp.
|
protected |
Definition at line 18 of file DynamicScenario.cpp.
|
protected |
Definition at line 171 of file DynamicScenario.cpp.
|
overridevirtual |
Implements BPMNOS::Model::Scenario.
Definition at line 38 of file DynamicScenario.cpp.
|
overridevirtual |
Implements BPMNOS::Model::Scenario.
Definition at line 57 of file DynamicScenario.cpp.
|
overridevirtual |
Implements BPMNOS::Model::Scenario.
Definition at line 30 of file DynamicScenario.cpp.
|
overridevirtual |
If at least one attribute value is not yet known, the method returns std::nullopt.
Implements BPMNOS::Model::Scenario.
Definition at line 156 of file DynamicScenario.cpp.
|
overrideprotectedvirtual |
Used internally by getCurrentInstantiations to get process-level data attributes.
Implements BPMNOS::Model::Scenario.
Definition at line 87 of file DynamicScenario.cpp.
|
overrideprotectedvirtual |
Used internally by getCurrentInstantiations to get process-level status attributes.
Implements BPMNOS::Model::Scenario.
Definition at line 79 of file DynamicScenario.cpp.
|
overridevirtual |
Implements BPMNOS::Model::Scenario.
Definition at line 48 of file DynamicScenario.cpp.
|
overridevirtual |
If the attribute value is not yet known, the method returns std::nullopt.
Implements BPMNOS::Model::Scenario.
Definition at line 137 of file DynamicScenario.cpp.
|
overridevirtual |
If the attribute value is not yet known, the method returns std::nullopt.
Implements BPMNOS::Model::Scenario.
Definition at line 95 of file DynamicScenario.cpp.
|
overridevirtual |
If at least one attribute value is not yet known, the method returns std::nullopt.
Implements BPMNOS::Model::Scenario.
Definition at line 141 of file DynamicScenario.cpp.
|
overridevirtual |
Implements BPMNOS::Model::Scenario.
Definition at line 34 of file DynamicScenario.cpp.
| void DynamicScenario::revealData | ( | BPMNOS::number | currentTime | ) | const |
Definition at line 175 of file DynamicScenario.cpp.
|
protected |
Definition at line 26 of file DynamicScenario.cpp.
|
protected |
Definition at line 22 of file DynamicScenario.cpp.
|
friend |
Definition at line 33 of file DynamicScenario.h.
|
mutableprotected |
Definition at line 66 of file DynamicScenario.h.
|
protected |
Definition at line 64 of file DynamicScenario.h.
|
protected |
Definition at line 67 of file DynamicScenario.h.
|
mutableprotected |
Definition at line 63 of file DynamicScenario.h.
|
protected |
Definition at line 68 of file DynamicScenario.h.
|
mutableprotected |
Definition at line 65 of file DynamicScenario.h.