Details
-
Type:
RFC
-
Status: Implemented
-
Resolution: Done
-
Component/s: DM
-
Labels:None
Description
For various PFS-related reasons I needed to write display_ginga, and came across a couple of things I'd like to modify in the afw.display.Device API. None of these changes modify any APIs (although the first could theoretically break a backend specification).
This is not an RFC about the far-reaching changes that we'll probably need to make full use of the power of firefly (or ginga for that matter)!
- If you have a backend "foo" I'd like to try importing "lsst.display.foo" before "foo"
- I'd like to add a default to the frame argument in the Display constructor (this isn't a ginga thing, but it's an annoying gotcha currently)
- I'd like to add a __getattr__ method to Device that allows you to call methods on the implementation (e.g. ginga has a way to embed an image into a notebook; while eventually we may promote that API to Device, for now I want a way to get at it without going through device._impl.display)
The last of these is probably the only contentious change as there are other less-magic ways to do it.
P.S. I have display_ginga more-or-less working. No mask overlays or callbacks yet, and a number of bug reports into Eric Jeschke...
Robert Lupton did you mean to have this RFC open for a whole month?
These changes look good to me. #1 does make more sense (I struggled a bit with that area in the Python 3 port).