-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTTT3.flow
30 lines (20 loc) · 924 Bytes
/
TTT3.flow
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
blockdiag {
st -> wait -> waitforset -> req1;
wait -> wait;
st [type=start];
wait [type=sync, wait = "['X1','X2','X3']"]
# waitforset [type=waitforset, set="[{'event':'X1'},{'event':'X2'}, {'event':'X3'}]", threshold=2]
waitforset [type=waitforset, set="[{'event':'X'+str(i)} for i in range(1,10) ]", threshold=2]
req1 [type=sync, req="['@']"]
st -> req2 -> req3;
req2 [type=sync, req="['X1']"]
req3 [type=sync, req="['X3']"]
# For debugging
class hidden [color = none, style = none, textcolor = white];
stt -> listener -> logger -> listener [style = "none"];
listener [type=sync,
wait="['X'+str(i) for i in range(1,9)]+['O'+str(i) for i in range(1,9)] + ['@']",
class = "hidden", autoformat='false'];
logger [type=logger, label="Events log", autoformat='false']
stt [type=start, class = "hidden", autoformat='false'];
}