Skip to content

Lazy skims, multiple, and mixed with histograms

Pieter David requested to merge piedavid/bamboo:betterskims into master

Related to https://gitlab.cern.ch/cp3-cms/bamboo/-/issues/88

The main change is using RDF::Snapshot with the lazy option, which allows to do other things in the same "event loop". For backwards-compatibility, SkimmerModule did not change, so that still makes one skim, but it is possible to add Skim objects to the plots list in a HistogramsModule (an example is added); that's also the only way to currently produce multiple skims at the same time (they end up in the same output file, so the names must be different then).

Some loose ends to fix before merging: open items, but this has been lingering for a while and is a useful addition, so they can wait for a followup PR later.

  • make skims work with the compiled backend again (needs a bit of work in the C++ part as well)
  • rebase and adapt to the backend changes in https://gitlab.cern.ch/cp3-cms/bamboo/-/merge_requests/195 (some of the ad-hoc code for skims could be absorbed into a ProductHandle class, with a method that calls Write or CloneTree as needed)
  • (after the changes above) add MergedSkim to combine outputs from multiple selections?

Comments/ideas welcome :-) .

Edited by Pieter David

Merge request reports