I checked what I could do without reworking the scheduler algorithm and structure:
- I'll have the estimation run anytime there is a change in a scheduler job. If possible, I'll have it trigger when a sequence job is updated in the Capture Sequence tab for clarity. But that might be overkill as when looking at it, the estimation has to take place when starting the scheduler too. In other words, re-evaluate everything unconditionally.
- I'll add a column with the light frame capture count to each scheduler job, so that the "stacking" effect of estimation is clearer when the output folder is identical between jobs. This means two duplicated jobs have to get a frame count increase anytime a capture is finished, and thus that this update must propagate amongst scheduler jobs, based on their output signature. This could be an unconditional re-estimation at each step actually.
- I'll search previous sequence jobs of the same scheduler job when estimating the required frame count for a scheduler job, in order to support multiple capture sequence jobs outputting to the same folder. This is probably an unnecessary feature, but because the sequence editor allows it and is unrelated to the scheduler editor, this is required to avoid sequence jobs not counted in when the total frame count should be larger than what is currently in the output folder. Oof
Eventually, highly debatable:
- I'll add HFR info next to the focus checkbox, for the user to notice whether it is the sequence job which is enforcing refocus, or only the scheduler. It's a problematic point, because it's not possible to know which object the focuser will use as target. I've had occurrences where this would work perfectly by running an initial manual focus, but also less than perfectly when the focus changed to another very small star (HFR limit was too high) or a galaxy core (HFR limit could not be achieved). I believe this could be fixed by raising the full-frame initial exposure that will be used to select a star.
- I'll make persistent stats about the duration of each step in order to better evaluate the duration of each step, and provide a way to customize these.
-Eric