Skip to content

Draft: Rich: Deterministic pixel addresses (CFV requirement), introduce CbmRichAddress

Martin Beyer requested to merge ma.beyer/cbmroot:rich_address into master

Context:
For the RICH CFV we decided to mask channels in the digitization step providing a masking file,
since the cameras are out of acceptance and the extra material is negligible for downstream detectors.
For more details see #3471 (Maybe of interest for @e.clerkin)

As mentioned by @f.uhlig in #2898, the current version uses
a simple counter for channel addresses and pmt Ids.
This may not be deterministic across different fairsoft versions, operating systems, compilers, etc.
-> A channel masking file may fail here

This MR:
Now the channel addresses and pmt Ids are derived from node paths (only supports v22-v24 for now),
instead of an unsafe counter. This is deterministic and allows to safely use a channel masking file.

Changes

  • Refactoring/cleanup of CbmRichDigiMapManger
  • Rename of CbmRichDigiMapManger -> CbmRichGeoHandler
  • Introduction of CbmRichAddress (similar to STS & FSD implementation)
  • In CbmRichGeoHandler mapping from RICH pmt pixel node paths to RichAddress (deterministic)
  • Remove obsolete class CbmRichMCbmDigiMapManager

TODO's

  • More testing
  • Should older geometry versions (<v22) still be supported, as they have a different nodePath structure (address counter as fallback?)
    -> Using for now old counter implementation for versions < v22
Edited by Martin Beyer

Merge request reports