Skip to content

remove CPU Hlt1 two track MVA line

Gerhard Raven requested to merge drop-hlt1-twotrack into master

The CPU Hlt1 two track MVA line is the sole user of the COMB functor. This functor is based on an older 'zip' construct instead of using the vectorized SOA collections. The 'zip' does not (can not!) include pointers to other 'zip's. This implies that to 'point' at other (vectorized) objects, one only has indices available, and the containers (zips) which those indices index into must be explicitly and separately provided (with all risks of passing the wrong ones!). This functionality was addressed in LHCb!3907 (merged), which does allow direct pointing from entires in one SOA collection to other SOA collections - but that is not what the two-track MVA line uses.

This makes the COMB functor very non-trivial, and in addition dangerous to use, and its continued existence increases the maintenance burden for the functors and reduces the freedom to simplify things -- but to drop it, the MVA two track line has to be dropped first. Hence this MR

(also see the discussion here as part of !1398 (closed) which is two-year old MR which tried to remove the use of COMB by replacing it with a more safe alternative)

Edited by Gerhard Raven

Merge request reports

Loading