Details
-
Type:
Story
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: astro_metadata_translator, obs_base
-
Labels:None
-
Story Points:6
-
Team:Architecture
-
Urgent?:No
Description
Currently because MegaPrime and DECam use multi-extension FITS files to store data for all detectors in a single file, we need to have a special ingest task. It's easy to miss this and end up ingesting a single detector.
Investigate an alternative scheme where a file header is read from FITS as now, the instrument is determined and then a method on the instrument class can return additional information (such as headers indexed by HDU) if needed.
Looking at the way ingest works (in the absence of an index file or sidecar) it currently does:
An alternative approach could be:
or
The advantage of the second is that this would embed the multiple HDU knowledge into a place that would allow it to be leveraged by the astrometadata write-index and write-sidecar commands. Putting it in the Instrument class completely separates it from that and I don't think we gain anything by doing so.