Proposed logic:
- If latest
runInfo msg is a run stop
- If latest
runInfo msg is a run start
- If we have received 'recent' frames on
_event topic for this run:
- If percentage of vetoed frames in buffer of last N frames >=50%
- If 'most' of the recent vetoed frames are from runcontrol vetoes:
- Otherwise
- If percentage of vetoed frames in buffer of last N frames < 50%
- If we have not received 'recent' frames on
_event topic for this run:
Pause/resume logic will also need adding after #39 - not yet clear how kdaectrl will notify consumers that a run is paused.
One option would be to make it a "paused veto" (hard veto which prevents events being emitted, but configured from software like runcontrol), which we could then treat in the same way as runcontrol from a consumer perspective.
Proposed logic:
runInfomsg is a run stoprunInfomsg is a run start_eventtopic for this run:_eventtopic for this run:Pause/resume logic will also need adding after #39 - not yet clear how
kdaectrlwill notify consumers that a run is paused.One option would be to make it a "paused veto" (hard veto which prevents events being emitted, but configured from software like runcontrol), which we could then treat in the same way as runcontrol from a consumer perspective.