redirect edges
Jenne Driggers (LIGO - Hanford Observatory) 2016-09-09 15:14:37 PDT
I want to be able to interrupt a state and redirect to a different state. But,
the target state should only be accessible from specific states - not a generic
GoTo.
Use case:
Waiting around for PRMI to lock, so the state in ISC_LOCK won't return True
until PRMI has actually locked. But, if the alignment is bad enough, we want
to misalign the PRM and just look at the MICH fringes. This requires a
redirect. But, we don't want any accidental clicks while we're in other states
to redirect to this CHECK_MICH_FRINGES state, so we want the edge to be
selectively GoTo.
Jameson Graef Rollins (LIGO - Caltech) 2016-09-09 16:43:39 PDT
The suggestion here is to enable "redirection" flags for edges, which would
enable redirection along those edges identical to how goto edges are handled.
This should be fairly straightforward to implement.
Internal note to me: might be worth changing the way that goto states are
handled to just make all of their incoming edges be these kind of redirect
edges. That would probably simplify the logic for redirection handling for all
of this stuff.