+5
−2
+5
−2
+5
−2
+13
−56
+2
−3
Loading
Invece di far coesistere loop e Expose/Guide con logica automatica di
priorità (stop_looping/abort/wait inseguiti nella sessione precedente),
si impedisce del tutto di premere Expose mentre il loop scicam è attivo
(disabled in UI + rifiuto lato backend) — l'operatore deve fermare il
loop a mano prima. Elimina la necessità di auto-stop e con essa tutto
il bus di sincronizzazione cross-widget.
- teccam_panel(panel_id, cam_id): riscritta con firma fissa (non più
dipendente dal dropdown Camera del Guider), una chiamata per stazione
(teccam1/2/3). Loop switch + Exptime + Binning, unico punto di
controllo per l'acquisizione della teccam.
- Rimossi i controlli loop nativi dal viewer (viewer_panel.html,
control.html, viewer.html) — il viewer torna puro display ovunque
compaia; has_loop rimosso anche da web/__init__.py.
- guider.py: _acquire() collassata a un solo ramo (legge sempre da
disco via viewer_fits_path, per ogni camera) — il guider non aziona
più nessuna camera. Spariti PASSIVE_CAMERAS, trigger_mode,
self.exptime/self.binning, il blocco stop_looping()/binning in
Guider.start().
- start() su stx.py/atik.py/mako.py torna a rifiutarsi esplicitamente
se la camera sta facendo loop, invece di auto-fermarlo e procedere.
stop_looping() resta solo per Loop.post() (riavvio con nuovi
parametri).
- control.js: lo switch Loop dello scicam disabilita Expose/Stop
quando acceso (nuovo parametro onChange di wireLoopToggle); wiring
Loop per tutte e 3 le stazioni (scicam + teccam).
- guider-panel.js: rimossa ogni logica exptime/binning/loop dal
pannello Guider — resta solo scelta camera-da-cui-leggere, box,
target, pick, guide/stop.
- sync-bus.js eliminato: un solo switch per camera in tutta la pagina,
nessun cross-widget sync necessario.
Co-Authored-By:
Claude Sonnet 5 <noreply@anthropic.com>