GCS and AGw Filters

GCS is calling PCS setGuideWavelength every time a "setFilter" is done - whether from the GCS GUI or from a GCS client or when GCS forces a filter setting (like during authorization). GCS has a kludge in the setGuidestarList (called on preset) to get the current filter setting from MODS AND then setFilter with that value so that it does the PCS setGuideWavelength for the MODS filter in use.

Because MODS sets filters without using the TCS interface (setAGWFilter) to notify GCS/PCS of the update, GCS has implemented different behaviour for MODS than for the AIP AGws. For LUCI they want GCS to force the filter setting to the default from the config file. For MODS they want GCS to get the current filter setting from the MODS hardware control.

We should try to make GCS "instrument agnostic" as much as we can. I would like to work out a sequence that works for all instruments.

1. GCS is relying on MODS to set the filter AFTER authorization. At authorization, GCS is using the MODS default filter and forcing it (as it does for LUCI). If the MODS script does not set the filter, they will get the default filter. This is OK since the MODS AGw filter is always set in the scripts.

2. A lot of the awkwardness in the code is due to what they did to "signal" from upper-level GCS code to lower level code that they need to call setFilter -- only to notify PCS. It seems much cleaner to let GCS (and instruments, etc.) set the filter all they like without worrying about notifying PCS until it matters. The question is - when does it matter? If the PCS GUIs will display an incorrect value until GCS calls the setGuideWavelength, maybe that's bad. Maybe the PCS should just get it from GCS shared memory? instead of the call? What else does PCS setGuideWavelength do? Maybe it triggers something else? I haven't looked at it.

3. IIF added a setAGWFilter command in early 2014 (build 2014A) for PEPSI to change the filter. That must be why GCS does all the PCS notification down in the setFilter at the lowest level.
Topic revision: r2 - 09 Oct 2018, PetrKubanek
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback