Standardise group of scans (like zseries)
For bliss-tomo we have
- single scans like
flat
ordark
orproj
- which is = bliss scan
- sequence like fulltomo, a combination of
dark+flat+proj
- which is = bliss sequence
- group of scans like zseries, a combination of multiple fulltomo
- this don't have equivalence
For fullfield tomo beamline we have at least 2 procedures which use or will use that (zseries
and other more generic series), and scientists also use there own scripts to create such acquisition (for example speckle
scan at ID19).
One specificity is that each scan of the series can be stored in different collections or datasets.
For now i mostly want to handle properly this groups online, which mean provide a convenient progressbar in daiquiri and flint.
To summarize i want to follow the stuffs above (i use fulltomo/zseries but it could be anything)
- a fulltomo is own by which zseries master
- a fulltomo is which step of zseries master
- a fulltomo is a retry of a step of zseries master
That could be done with metadata, the same way it is handled for a sequences.
For example we could use a mostly empty "master" scan like a bliss sequence, and maybe the bliss sequence could be used without problem.
Because we use newcollection
/newdataset
during this scan, the writer will probably be confused. To me, right now, such "master" scan could just be ignored by the writer.
# here is a theoretical use case example
# i still have to check if it could be used with our actual API
seq = sequence()
with seq as s:
for i in range(5):
newdataset(f"{i:04d}")
try:
fulltomo.basic_full_tomo(..., sequence=s)
except Exception:
newdataset(f"{i:04d}_retry1")
fulltomo.basic_full_tomo(..., sequence=s)
FYI @muzelle
Any problem with that? @denolf @felix @matias.guijarro