Use of Run SubRun and Event numbers and ids¶The art framework contains identifiers for various units of data:
RunIDis the identifier for an interval of time (the run) of the running of a data acquisition system.
SubRunIDis the identifier for an interval (the subrun), within a run, in which the operating conditions (e.g. calibration quantities) do not change.
EventIDis the identifier for a unique readout (the event) of the data acquisition system during a time window with no further subdivision.
RunID contains a run number; each
SubRunID contains a
RunID and a subrun number; each
EventID contains a
SubRunID and an event number.
Each of the run number, subrun number and event number is a 32-bit unsigned integral type. One value of each (called INVALID_RUN_NUMBER, INVALID_SUBRUN_NUMBER, and INVALID_EVENT_NUMBER) is reserved to indicate lack of a value. Default-constructed identifiers always contain invalid values, so that they can be distinguished from identifiers issues to actual
Events should never contain an invalid identifier.
The issuing of identifiers is generally the job of the
InputSource used in a program. Recommended practice is to reset the subrun number to 0 with each new run, and the event number to zero with each new subrun.