Lock config flags early
- Avoids a problem in
bbtt
andyybb
ntuplers where the old approach of update thetree_config
withextra_output_branches
no longer updated the flags that reachedminituple_cfg
. Now we callminituple_cfg
explicitly in all the analysis executables, and pass the list of branches directly. Still loops over all defined TTrees, feel free to cut this back if preferred (e.g. defining a singular TTree output config object rather than a list). - Since there is nothing else that needs to modify the flags returned by
analysis_configuration()
, moved the flag locking and conversion toConfigItem
insideanalysis_configuration()
. In the central infrastructure, only the argument parser, which can be extended, and yaml parser are permitted to define the flags.
Note: As I only added in minituple_cfg
, both yybb
and bbtt
no longer support h5 and xAOD output just on the basis of the output file args -- feel free to add these back in if desired. Perhaps we should check more robustly that such arguments would be processed, if defined.
Another point: the n_events
counter needed to be explicitly added to satisfy the CI. Not sure if we would want instead to check the event counts passing the dedicated selection, but will leave analysis-specific testing to the clients.
- I snuck in an extra option to dump either the
Analysis
flags or the fullAthConfigFlags
object to a yaml file. That should address #77.
Edited by Teng Jian Khoo