You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
841 B
22 lines
841 B
6 years ago
|
process Pre(&Stored, &Delayed : FailureType, S : BType, &env : Flows) is
|
||
|
states s0
|
||
|
from s0 select
|
||
|
on (Stored != env.I and S = Empty); wait [0,0]; Stored := env.I; $\ldots$
|
||
|
[] on (S = Full); wait [a,b]; Delayed := Stored; S := Empty; $\ldots$
|
||
|
end
|
||
|
|
||
|
process delay[go : in FailureType](&O : FailureType) is
|
||
|
states sEmpty, sFull
|
||
|
var delayed : FailureType := Ok
|
||
|
from sEmpty go?delayed; to sFull
|
||
|
from sFull wait [a,b]; O := delayed; to sEmpty
|
||
|
|
||
|
process front[p,q : out FailureType](&I : FailureType) is
|
||
|
states s
|
||
|
var stored : FailureType := Ok
|
||
|
from s on (I != stored); stored := I; select p!I [] q!I end; loop
|
||
|
|
||
|
component Pre_2(&I, &O: FailureType) is
|
||
|
port go1, go2 : FailureType in [0,0]
|
||
|
priority go1 > go2
|
||
|
par * in front[go1,go2](&I) || delay[go1](&O) || delay[go2](&O) end
|