labscript-suite-temp-2 / runmanager

runmanager is a graphical user interface (GUI) used to aid the compilation of labscript experiment scripts into hardware instructions to be executed on the hardware. Experiment parameters can be adjusted in the GUI, and lists of parameters can be used to create sequences of experiments, and scan over complex parameter spaces.
BSD 2-Clause "Simplified" License
0 stars 0 forks source link

Difference between API and GUI when handling zip groups #60

Open philipstarkey opened 6 years ago

philipstarkey commented 6 years ago

Original report (archived issue) by Philip Starkey (Bitbucket: pstarkey, GitHub: philipstarkey).


I believe the API won't automatically detect zip groups when compiling a sequence of shots. I'm not sure if this makes sense or not.

On the one hand, we could argue that if you are using the API, then the globals file should explicitly specify the expansion column correctly for every global and not expect the runmanager API to work things out.

On the other hand, this is a real PITA if you just want programmatic control over compilation of shots, but otherwise identical behaviour to the GUI.

The solution is probably supporting both ways. Anyway, the missing thing is the fact that guess_expansion_modes exists in the GUI code, not in the API code for runmanager, and that this needs to be iteratively called until the expansion types settle to a steady state (see preparse_globals in the GUI code.