Skip to content

Add luminosity counter summary algorithms

Alex Pearce requested to merge apearce-lumi-summary-algs into master

This adds two algorithms for creating LHCb::HltLumiSummary objects (and a test that checks they work):

  1. LumiCounterFromContainer<T>: Takes a single container (type T) as input and creates a summary object filled with the size() of its input.
  2. LumiCounterMerger: Takes a vector of summaries as input and outputs a single, merged summary object.

These replace most of the functionality of the old LumiCount* family of algorithms (found under Hlt/Luminosity in the Hlt project), which ran one after another, mutating the same initial summary object.

Used in Moore!281 (merged).

Discussion points

The implementation is fairly straightforward. Comments are welcome but I don't think we need to optimise too much (these run in HLT1, but in one event per thousand). A couple of points:

  1. Whether the summary object is useful as-is. It's basically a wrapper around a map, and we don't really need the wrapper layer anymore, but we anyhow persist this in more efficient way. Not high priority IMO.
  2. What other quantities we might want to measure, and what implementations we'll need to do that. One example is the number of hits in a given subdetector (RICH, ECAL). This MR can proceed in parallel, though.

/cc @rmatev @balagura

Edited by Alex Pearce

Merge request reports