Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions src/auxiliary_data.jl
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ function _lookup_table_from_image(data::AbstractMatrix, header::AbstractDict, tr
end

function _paper_iv_auxiliary_data(header::AbstractDict, loader; alt::Char = ' ', minerr::Real = 0.0)
det2im_specs, cpdis_specs = _paper_iv_lookup_specs(header; alt = alt, minerr = minerr)
det2im_specs, cpdis_specs = _paper_iv_lookup_specs(header; alt, minerr)

# Resolve all referenced image arrays through the backend-provided loader.
det2im = ntuple(i -> isnothing(det2im_specs[i]) ? nothing : loader(det2im_specs[i]), 2)
Expand All @@ -118,7 +118,7 @@ function _paper_iv_auxiliary_data(header::AbstractDict, loader; alt::Char = ' ',
if all(isnothing, det2im) && all(isnothing, cpdis)
return NoAuxiliaryWCSData()
end
return AuxiliaryWCSData(det2im = det2im, cpdis = cpdis)
return AuxiliaryWCSData(; det2im, cpdis)
end

function _external_auxiliary_data(
Expand All @@ -128,16 +128,16 @@ function _external_auxiliary_data(
alt::Char = ' ',
minerr::Real = 0.0,
)
paper_iv = _paper_iv_auxiliary_data(header, paper_iv_loader; alt = alt, minerr = minerr)
tabular = _tabular_auxiliary_data(header, tabular_loader; alt = alt)
paper_iv = _paper_iv_auxiliary_data(header, paper_iv_loader; alt, minerr)
tabular = _tabular_auxiliary_data(header, tabular_loader; alt)

# Preserve the cheap no-auxiliary payload when neither external family is present.
paper_iv isa NoAuxiliaryWCSData && tabular isa NoTabularWCSData &&
return NoAuxiliaryWCSData()

det2im = paper_iv isa AuxiliaryWCSData ? paper_iv.det2im : (nothing, nothing)
cpdis = paper_iv isa AuxiliaryWCSData ? paper_iv.cpdis : (nothing, nothing)
return AuxiliaryWCSData(det2im = det2im, cpdis = cpdis, tabular = tabular)
return AuxiliaryWCSData(; det2im, cpdis, tabular)
end

function _header_references_tabular_axis(header::AbstractDict, alt_str::AbstractString)
Expand Down
18 changes: 6 additions & 12 deletions src/parsing.jl
Original file line number Diff line number Diff line change
Expand Up @@ -543,9 +543,7 @@ function _merge_spectral_aux(aux::NoAuxiliaryWCSData, spectral::SpectralWCSData)
return AuxiliaryWCSData(spectral = spectral)
end
function _merge_spectral_aux(aux::AuxiliaryWCSData, spectral::AbstractSpectralWCSData)
return AuxiliaryWCSData(det2im = aux.det2im, cpdis = aux.cpdis,
tabular = aux.tabular, spectral = spectral,
time = aux.time, grism = aux.grism)
return AuxiliaryWCSData(; aux.det2im, aux.cpdis, aux.tabular, spectral, aux.time, aux.grism)
end

# ── Grism spec merge ──────────────────────────────────────────────────────────
Expand All @@ -557,9 +555,7 @@ function _merge_grism_aux(aux::NoAuxiliaryWCSData, grism::GrismWCSData)
return AuxiliaryWCSData(grism = grism)
end
function _merge_grism_aux(aux::AuxiliaryWCSData, grism::AbstractGrismWCSData)
return AuxiliaryWCSData(det2im = aux.det2im, cpdis = aux.cpdis,
tabular = aux.tabular, spectral = aux.spectral,
time = aux.time, grism = grism)
return AuxiliaryWCSData(; aux.det2im, aux.cpdis, aux.tabular, aux.spectral, aux.time, grism)
end

# ── Time axis spec construction ────────────────────────────────────────────────
Expand Down Expand Up @@ -588,12 +584,10 @@ function _merge_time_aux(aux::NoAuxiliaryWCSData, time::NoTimeWCSData)
return aux
end
function _merge_time_aux(aux::NoAuxiliaryWCSData, time::TimeWCSData)
return AuxiliaryWCSData(time = time)
return AuxiliaryWCSData(; time)
end
function _merge_time_aux(aux::AuxiliaryWCSData, time::AbstractTimeWCSData)
return AuxiliaryWCSData(det2im = aux.det2im, cpdis = aux.cpdis,
tabular = aux.tabular, spectral = aux.spectral,
time = time, grism = aux.grism)
return AuxiliaryWCSData(; aux.det2im, aux.cpdis, aux.tabular, aux.spectral, time, aux.grism)
end

function _build_observation_spec(header::AbstractDict, alt_str::AbstractString)
Expand Down Expand Up @@ -874,7 +868,7 @@ wcs = WCS(hdr)
```
"""
function WCS(header::AbstractDict; fobj = nothing, alt::Char = ' ', minerr::Real = 0.0, preserve_units::Bool = false)
if alt != ' ' && !(('A' <= alt <= 'Z'))
if alt != ' ' && !('A' <= alt <= 'Z')
throw(ArgumentError("alt must be ' ' or 'A'–'Z', got $(repr(alt))"))
end
alt_str = alt == ' ' ? "" : string(alt)
Expand Down Expand Up @@ -1230,4 +1224,4 @@ function WCS_all(header::AbstractDict; fobj = nothing, minerr::Real = 0.0, prese
end
end
return result
end
end
Loading