Allen RICH decoding
This MR introduces RICH decoding, concretely producing RichSmartIDs from RICH1 and RICH2 raw banks.
- Created algorithm
rich_decoding_t
, which performs the decoding by calculating the number of hits, prefix sum and finally decoding the hits. - Added simplified copies of RichSmartID, PackedFrameSizes, Tel40CableMapping and PDMDBDecodeMapping adjusted to the requirements of GPU computing, namely no dynamic memory allocation, no
std::string
elements and__host__ __device__
attributes. - Created
Allen::RawEvent
andAllen::RawBank
which replaceCaloRawEvent
andCaloRawBank
. Ideally this should be used in other subdetectors as well due to the raw bank format being mostly identical. - Added configurations
rich
andhlt1_pp_rich_no_ut
. - Added throughput test of
hlt1_pp_rich_no_ut
. - Added two geometry files corresponding to Tel40CableMapping and PDMDBDecodeMapping, alongside constants and the necessary scaffolding.
Goes with LHCb!4001 (merged) and Moore!2171 (merged)
Done in collaboration with @caschbur .
Edited by Daniel Hugo Campora Perez