DOI-USGS / ale

Abstraction Layer for Ephemerides (ALE)
Other
13 stars 32 forks source link

Better handle ISIS Camera Version information attachment #458

Open ladoramkershner opened 2 years ago

ladoramkershner commented 2 years ago

Currently if there is no information in ["IsisCube"]["Kernels"]["CameraVersion"] in the incoming label, ALE fails here and ISIS handles the spiceinit. However, since Camera Version is ISIS camera version information, I don't think failing is the proper way to handle this because no raw mission EDR label will have this information.

Looking into how ISIS handles this, it seems spiceinit calls CameraFactory::CamerVersion here which looks for a Camera plugin file (either local or at location $ISISROOT/lib/Camera.plugin) to inform the ISIS camera version.

We could duplicate this logic, since ALE is typically used WITH ISIS we could assume this plugin file exists exactly the same as ISIS does? I am really curious to hear other's thought because I am not well versed in ALE big picture architecture.

jessemapel commented 2 years ago

ALE should not use ISIS camera plugin files. It is already rather entangled with ISIS and it is better if it remains something that is primarily consumed by ISIS.

I'd much rather change the logic in ALE. We could potentially remove the ISIS camera version completely from ALE and just let ISIS handle all of it.

acpaquette commented 2 years ago

I think @jessemapel is correct that we should just let ISIS handle it's camera versioning. Looking a little closer at ALE's integration into ISIS, we don't actually use the isis_camera_version defined on the ALE isd anywhere. So I am all for removing it from the formatter. It will break the old isis_formatter but I don't know if anyone uses it

jessemapel commented 2 years ago

Old versions of ISIS use it, but they are all pinned to old versions of ALE