Closed
Description
This issue is meant as a forum to discuss the new tracing classes in specreduce/tracing.py
since the PR that introduced them has already been merged.
I'll start by saying all of Trace
, FlatTrace
, and ArrayTrace
work smoothly for me.
Here are some avenues of further discussion and possible changes to consider:
- We don't currently have a way to calculate a trace based on an image. I support creating one, but is it a priority? If so, I think @jradavenport had said that we were OK to port code from the
kosmos
trace()
function into specreduce. - As @ibusko mentioned here, it would be nice to validate that the trace position is greater than 1 and less than the cross-dispersion axis' length as the
Trace
object is being created instead of at the beginning of the extraction process. - In response to @tepickering's comment here, I support including dispersion/cross-dispersion axis information as attributes of
Trace
objects instead of as arguments of an extraction class'__call__()
method. If we want to allow for more interchangeability, perhaps they could be set as arguments ofTrace
objects. If not, we could hard-code our assumption that axis 1 is dispersion and axis 0 is cross-dispersion intoTrace
. Either way, extraction classes would get that information for free since they must take aTrace
object as an argument. - Should all
Trace
objects contain animage
attribute?ArrayTrace
andFlatTrace
don't need an image, but futureTrace
implementations may. Including the image in theTrace
object would also decrease the number of arguments needed for extraction objects. However, @ibusko brought up a point that you may not always want to perform an extraction on the exact image from which you created a trace.
Metadata
Metadata
Assignees
Labels
No labels