Instruments¶
An instrument module adapts the core to one detector: its exposure modes, its extra commands, its FITS keywords. A given binary serves exactly one instrument.
Each lives in its own repository and builds there, pulling in camera-interface with
FetchContent. The instrument pins the core, so a given instrument commit builds against one
specific core revision. Each instrument documents itself in its own repository.
Note
The core’s CI builds only reference_instrument, so an instrument can fall behind changes to the core without anything here noticing.
Building one¶
From the instrument’s own checkout:
cmake -S . -B build
cmake --build build
reference_instrument is the template for a new one, including its CMakeLists.txt.
The instrument name is also checked against the INSTRUMENT key in the .cfg, so a config cannot
be pointed at a binary built for a different camera.
For how a module plugs into the core, see architecture.