BPMN-OS
BPMN for optimization and simulation
Loading...
Searching...
No Matches
ScenarioUpdater.h
Go to the documentation of this file.
1
#ifndef BPMNOS_Execution_ScenarioUpdater_H
2
#define BPMNOS_Execution_ScenarioUpdater_H
3
4
#include "
execution/engine/src/Observer.h
"
5
6
namespace
BPMNOS::Execution
{
7
8
class
Engine;
9
10
/**
11
* @brief Observer that updates scenario state during execution.
12
*
13
* - On ClockTick: calls scenario->revealData() for deferred disclosure
14
* - On Token ARRIVED/CREATED at Activity: calls scenario->initializeArrivalData()
15
* - On Token BUSY at Task: calls scenario->setTaskCompletionStatus()
16
*
17
* Works with Static, Dynamic, and Stochastic scenarios.
18
*/
19
class
ScenarioUpdater
:
public
Observer
{
20
public
:
21
ScenarioUpdater
() =
default
;
22
23
void
subscribe
(
Engine
* engine);
24
void
notice
(
const
Observable
* observable)
override
;
25
};
26
27
}
// namespace BPMNOS::Execution
28
29
#endif
// BPMNOS_Execution_ScenarioUpdater_H
Observer.h
BPMNOS::Execution::Engine
Definition
Engine.h:33
BPMNOS::Execution::Observer
Definition
Observer.h:9
BPMNOS::Execution::ScenarioUpdater
Observer that updates scenario state during execution.
Definition
ScenarioUpdater.h:19
BPMNOS::Execution::ScenarioUpdater::ScenarioUpdater
ScenarioUpdater()=default
BPMNOS::Execution::ScenarioUpdater::notice
void notice(const Observable *observable) override
Definition
ScenarioUpdater.cpp:17
BPMNOS::Execution::ScenarioUpdater::subscribe
void subscribe(Engine *engine)
Definition
ScenarioUpdater.cpp:12
BPMNOS::Execution
Definition
Controller.h:9
BPMNOS::Execution::Observable
Definition
Observable.h:6