A typical pattern for processing input files is to process events from one file at a time, moving on to another file once the events from one file have been exhausted. Because of art's processing behavior, this generally means that to process multiple datasets in the same process requires processing events from each dataset sequentially--i.e first process all of the signal events, then some background events, etc. This behavior, however, is not representative of real data-taking, where triggered events arise from various sources in an uncorrelated manner.
To better simulate data-acquisition contexts, the
SamplingInput source is provided, which allows users to specify an arbitrary number of datasets from which events will be sampled according to user-defined weights. This differs from the
MixFilter technology, where data products from various sources can be collected and injected into an already-created art event (see here for more information about product mixing).
Details are given in the links below: