Skip to content

RDO to PRD caching

I thought I'd start on the work required for ATR-20620 and update as it progresses. I had to fix an error in the templating of the caching which was preventing compilation. This is corrected now.

To start with, I have implemented to update handle key functionality, but the interface follow-ups are needed to properly test.

  1. MDT - MuonSpectrometer/MuonCnv/MuonMDT_CnvTools/src/MdtRdoToPrepDataToolMT
  2. CSC - MuonSpectrometer/MuonCnv/MuonCSC_CnvTools/src/CscRdoToPrepDataToolMT
  3. STGC - MuonSpectrometer/MuonCnv/MuonMDT_CnvTools/src/sTgcRdoToPrepDataToolMT
  4. MM - MuonSpectrometer/MuonCnv/MuonMM_CnvTools/src/MmRdoToPrepDataToolMT

For RPC and TGC, it appears we need caching for the Trigger Coin objects which are also used

  1. RpcCoin/TgcCoin - MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonTrigCoinData/MuonTrigCoinData/MuonTrigCoinData_Cache
  2. RPC - MuonSpectrometer/MuonCnv/MuonRpc_CnvTools/src/RpcRdoToPrepDataToolMT

For the TGC, it appears we handle three bunch crossings at the same time with WriteHandleKeyArray. I have now added typedefs to this class in order to allow the equivalent of an UpdateHandleKeyArray without making changes to StoreGate, as requested in the discussion below.

  1. TGC - MuonSpectrometer/MuonCnv/MuonTGC_CnvTools/src/TgcRdoToPrepDataToolMT

I have implemented the functionality for decoding the CSC and MDT, handling special cases listed in the source code for the MDT where there may be two ROD to one PRD. The next steps will be to implement the RPC and TGC but there are some difficulties that need to be detailed regarding more const_cast processing.

Edited by Ian Allan Connelly

Merge request reports