Unified Header h5 serialisation
Let's continue this discussion here @tgal
Reminder: currently, in aanetpump the aa header gets converted to a dict(str->dict(str->float))
, ; each inner dict gets converted to a node in /header
, and this node has its contents attached as h5 _v_attrs
(str->float).
Do we want to keep this structure nested like this? Or do we want to collapse this into a flat structure?
Have /header/can -> emin, emax,
; Or have a single /header
node with attrs
can_emin, can_emax` etc?
(Probably flat is better? Is there a limit on how many attrs we can attach to a node?
Maybe make this simply into a 1-row table>
/reco (Group) ''
/reco/jmuongandalf (Table(5,), fletcher32, shuffle, zlib(5)) 'JMUONGANDALF'
/reco/jmuonprefit (Table(6,), fletcher32, shuffle, zlib(5)) 'JMUONPREFIT'
/reco/jmuonsimplex (Table(5,), fletcher32, shuffle, zlib(5)) 'JMUONSIMPLEX'
/header/PM1_type_area_TTS (Group) 'PM1_type_area_TTS'
/header/XSecFile (Group) 'XSecFile'
/header/can (Group) 'can'
/header/coord_origin (Group) 'coord_origin'
/header/cut_in (Group) 'cut_in'
/header/cut_nu (Group) 'cut_nu'
/header/cut_primary (Group) 'cut_primary'
/header/cut_seamuon (Group) 'cut_seamuon'
/header/det_geo (Group) 'det_geo'
/header/detector (Group) 'detector'
/header/end_event (Group) 'end_event'
/header/genhencut (Group) 'genhencut'
/header/genvol (Group) 'genvol'
/header/hit_fmt (Group) 'hit_fmt'
/header/livetime (Group) 'livetime'
/header/merg (Group) 'merg'
/header/muon_desc_file (Group) 'muon_desc_file'
/header/node (Group) 'node'
/header/norma (Group) 'norma'
/header/physics (Group) 'physics'
/header/physics_1 (Group) 'physics_1'
/header/physics_2 (Group) 'physics_2'
/header/pid (Group) 'pid'
/header/propag (Group) 'propag'
/header/seed (Group) 'seed'
/header/seed_1 (Group) 'seed_1'
/header/seed_2 (Group) 'seed_2'
/header/simul (Group) 'simul'
/header/spectrum (Group) 'spectrum'
/header/start_run (Group) 'start_run'
/header/target (Group) 'target'
/header/translate (Group) 'translate'
/header/water_model (Group) 'water_model'