Skip to content

Lock config flags early

Teng Jian Khoo requested to merge khoo/easyjet:lock-config-flags-early into master
  • Avoids a problem in bbtt and yybb ntuplers where the old approach of update the tree_config with extra_output_branches no longer updated the flags that reached minituple_cfg. Now we call minituple_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 to ConfigItem inside analysis_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 full AthConfigFlags object to a yaml file. That should address #77.
Edited by Teng Jian Khoo

Merge request reports