I/O sources#
IoSources is a runtime registry of named external inputs. A registration binds
a reference such as sample, background, or calibration to an IoSource
implementation and resource location.
Current source families include HDF5/NeXus, YAML, CSV, in-memory buffers, and optional Tiled access. Exact capabilities are listed in the I/O capability reference.
Steps address source content with ref::path, for example:
sample::/entry/instrument/detector/data
sample::/entry/instrument/detector/data@units
Keep frequently changing resource locations in runtime registration rather than
hard-coding them into reusable pipeline YAML. AppendSource can load a complete
source into ProcessingData; AppendProcessingData can load selected values
with explicit metadata.
The CLI, Python runner, and runtime service all use the same registry contract. Restricted servers additionally constrain allowed source types and filesystem roots.