add run changes to the main Allen loop

Daniel Charles Craik requested to merge dcraik_add_run_changes into master
  • MEPProvider and MDFProvider have both been modified to only fill a slice with events from a single run
  • InputProviders now also return the run number on calls to get_slice
  • BinaryProvider always reports a run number of 0 and does not split slices by run
  • run_slice reports any change of run number by sending a RUN message to the main loop before the SLICE message
  • Upon receiving a RUN message, the main loop will pause listening to I/O threads; wait for all streams to finish processing existing slices; call updater->update with the new run number; and then resume listening to I/O threads
  • Splitting slices by run is disabled by the command-line argument --disable-run-changes (defaults to 1)
Edited by Software for LHCb

Merge request reports