RICH Reco Preparations for DD4Hep support
This MR (and those linked to it) lay some ground work for the migration to DD4HEP in terms of support for functionality needed by the reconstruction.
The RICH has rather complex RichDet
objects, with a number of pieces of functionality needed by the reconstruction. In a sense during Run1/Run2 they grew to really be extensions of the reconstruction.
With the migration to DD4HEP this needs to change in that the objects in Detector
will (both necessarily and by choice) be a lot simpler. Functionality currently in RichDet but not to be kept in the DD4HEP equivalents will be migrated to derived condition
helpers. This MR finishes the ground work for this by migrating all uses of RichDet objects in the reconstruction to use a set of these helper objects, defined in the RichDetectors
package in LHCb. Everywhere else (at least for the reconstruction) uses these objects so are blind to if underneath they are using RichDet or DD4HEP.
For now, most of the functionality in these wrappers is just forwarded back to the underlying (RichDet) classes. The next step is to start to test against DD4HEP, which will require in some cases porting required functionality either to the DD4HEP classes, or the wrappers, as appropriate.
just to note, the remaining uses of RichDet directly, instead of via the wrappers, is in some legacy packages in Lbcom, RichTools
and RichAlgorithms
. These are old legacy components, not used by the functional reconstruction but still kept because e.g. used by Boole. This will eventually need to be addressed (by someone...) as well but that is not an aim here.
Needs to be merged with Lbcom!593 (merged) Rec!2648 (merged) Boole!372 (merged)
Merge request reports
Activity
added RICH label
mentioned in merge request Lbcom!593 (merged)
mentioned in merge request Rec!2648 (merged)
mentioned in merge request Boole!372 (merged)
- Resolved by Christopher Rob Jones
- Resolved by Sebastien Ponce
- Resolved by Sebastien Ponce
- Resolved by Christopher Rob Jones
added 34 commits
-
c3b9b7ac...a263790c - 2 commits from branch
lhcb:master
- df44ea35 - RichMirror.h - Add accessor to underlying type
- ea247e73 - RichFutureUtils/RichGeomPhoton.h - Fix doxygen comment path
- e069d640 - RichUtils/RichGeomPhoton.h - Use wrapped mirror class
- 6a97ab03 - RichTel40CableMapping - cleanup
- 583c262b - RichSmartID - Add MaxModulesPerPanel parameter
- 5de1f9ba - RichDet - Add method to access all PDs in a panel
- cf1d8fea - RichPD - Add accessors to underlying object
- 86fbe920 - RichPDPanel - Add storage for own PD objects, rework ray-tracing API
- cf8357b3 - RichDetectors/RichX - Return wrapped PD panels in accessor
- 1edab3c8 - Add RichPDInfo derived condition helper class
- 2b62941e - Hide DeRichPD usage behind RichDetectors wrapper classes
- 38d9f6f6 - RichGeomPhoton - Move STL includes to last in list
- dd459c3f - RichDetectors: Add DD4HEP Switches for underlying object types
- 1672a515 - Fixed formatting
- 3fb53a5f - RichDetectors - Generalise method forwarding
- 257e422a - RichX - Add forwarding for hasCondition and condition methods
- f30f95cc - RichPDPanel - Add forwarding for isLargePD method
- ac06153f - RichPDInfo - Add isLargePD method
- ce636664 - RichFutureDAQ - Remove any usage of DeRichSystem
- e2e904ea - RichSmartIDs - migrate from DeRichSystem to PDInfo
- 9f5684c3 - RichPDMDBEncodeMapping - Fix input condition locations
- c7995544 - remove obsolete IRichRefractiveIndex.h interface
- e4239c7b - RichDetectors: Add wrapper classes for radiator volumes
- 6706bd7d - Detectors::Rich1 : remove unneccessary namespace
- 62408c1d - RichRadIntersection - make radiator pointer type agnostic during DD4HEP transistion
- aa505796 - RichCommonBase - remove Derich forward declaration
- da512b0d - RichFutureUtils - migrate to Radiator wrappers
- 974af61d - RichInterfaces - remove Rich::IRefractiveIndex from dictionary
- 5705c422 - RichTrackSegment - define local type for intersections
- 0dd23ee3 - Fixed formatting
- 60dcaa50 - RichPDInfo - add method to access all PMT SmartIDs
- f7c3b20b - RichX - Add beampipe type specification
Toggle commit list-
c3b9b7ac...a263790c - 2 commits from branch
added RTA label
- Resolved by Christopher Rob Jones
added ci-test-triggered label
- Resolved by Christopher Rob Jones
- [2021-12-08 13:26] Validation started with lhcb-master-mr#3290
added hlt2-throughput-decreased label
added hlt1-throughput-decreased label
added 2 commits
removed hlt1-throughput-decreased label
removed hlt2-throughput-decreased label
- Resolved by Christopher Rob Jones
- [2021-12-08 18:15] Validation started with lhcb-master-mr#3293
- [2021-12-09 19:05] Validation started with lhcb-master-mr#3311
- [2021-12-09 19:20] Validation started with lhcb-master-mr#3311
- [2021-12-09 19:34] Validation started with lhcb-master-mr#3311
Edited by Software for LHCbassigned to @jonrob
added hlt2-throughput-decreased label
added hlt1-throughput-decreased label
removed hlt1-throughput-decreased label
removed hlt2-throughput-decreased label
added 73 commits
-
fef9cbad...c8c17e13 - 31 commits from branch
lhcb:master
- fa7d4075 - RichMirror.h - Add accessor to underlying type
- 36fdf945 - RichFutureUtils/RichGeomPhoton.h - Fix doxygen comment path
- 2f30e576 - RichUtils/RichGeomPhoton.h - Use wrapped mirror class
- c80e9894 - RichTel40CableMapping - cleanup
- ad4ca0da - RichSmartID - Add MaxModulesPerPanel parameter
- 4d4b121a - RichDet - Add method to access all PDs in a panel
- 848fd507 - RichPD - Add accessors to underlying object
- 130874ee - RichPDPanel - Add storage for own PD objects, rework ray-tracing API
- 130af288 - RichDetectors/RichX - Return wrapped PD panels in accessor
- fed6494b - Add RichPDInfo derived condition helper class
- 0e9e83d3 - Hide DeRichPD usage behind RichDetectors wrapper classes
- 9b447117 - RichGeomPhoton - Move STL includes to last in list
- 6935dba6 - RichDetectors: Add DD4HEP Switches for underlying object types
- 3f37c70a - Fixed formatting
- 36d1c598 - RichDetectors - Generalise method forwarding
- affd51c2 - RichX - Add forwarding for hasCondition and condition methods
- 41de5089 - RichPDPanel - Add forwarding for isLargePD method
- 04d544d0 - RichPDInfo - Add isLargePD method
- 4c211c3b - RichFutureDAQ - Remove any usage of DeRichSystem
- 201e485c - RichSmartIDs - migrate from DeRichSystem to PDInfo
- 1966df96 - RichPDMDBEncodeMapping - Fix input condition locations
- 56ec34a3 - remove obsolete IRichRefractiveIndex.h interface
- 50ac7d4a - RichDetectors: Add wrapper classes for radiator volumes
- 23a61b26 - Detectors::Rich1 : remove unneccessary namespace
- b7c3fbdb - RichRadIntersection - make radiator pointer type agnostic during DD4HEP transistion
- e6465a8e - RichCommonBase - remove Derich forward declaration
- c823423b - RichFutureUtils - migrate to Radiator wrappers
- 41f55796 - RichInterfaces - remove Rich::IRefractiveIndex from dictionary
- 1b0c211d - RichTrackSegment - define local type for intersections
- e5a918b3 - Fixed formatting
- 2c284f11 - RichPDInfo - add method to access all PMT SmartIDs
- 28e02a15 - RichX - Add beampipe type specification
- 81e6d248 - RichGeomPhoton - avoid empty comments
- 157a8de8 - Remove IRichGenericHPDAnalysisTool.h tool interface
- 116ea221 - Remove IRichAddBackground.h tool interface
- eae13cac - Remove IRichRadiatorTool.h interface
- 71301b5f - remove IRichDetParameters.h
- 58b56790 - remove IRichSnellsLawRefraction.h
- 9be0cb0e - remove IRichMCTrackInfoTool.h interface
- d66c0f60 - remove IRichRayTracing.h
- 5cdef34b - remove IRichPixelSuppressionTool interface
- d68b30f9 - RichPDPanel: Fix support for legacy 'classic' PMTs
Toggle commit list-
fef9cbad...c8c17e13 - 31 commits from branch
added 1 commit
- 20356868 - RichPDPanel: Fix support for legacy 'classic' PMTs
- Resolved by Marco Clemencic
added 1 commit
- 9fd5af97 - RichPDPanel: Fix support for legacy 'classic' PMTs
mentioned in merge request Boole!368 (merged)
- Resolved by Rosen Matev
- [2021-12-10 12:07] Validation started with lhcb-master-mr#3316
added 54 commits
-
9fd5af97...233a3df4 - 12 commits from branch
lhcb:master
- 751137ed - RichMirror.h - Add accessor to underlying type
- f327cb03 - RichFutureUtils/RichGeomPhoton.h - Fix doxygen comment path
- ba16be35 - RichUtils/RichGeomPhoton.h - Use wrapped mirror class
- 7a0094f3 - RichTel40CableMapping - cleanup
- a3a1d919 - RichSmartID - Add MaxModulesPerPanel parameter
- 7b0be665 - RichDet - Add method to access all PDs in a panel
- dc52e164 - RichPD - Add accessors to underlying object
- c59b3dc4 - RichPDPanel - Add storage for own PD objects, rework ray-tracing API
- 18439914 - RichDetectors/RichX - Return wrapped PD panels in accessor
- 4720afc7 - Add RichPDInfo derived condition helper class
- b66d68e4 - Hide DeRichPD usage behind RichDetectors wrapper classes
- b3603715 - RichGeomPhoton - Move STL includes to last in list
- 851a6f32 - RichDetectors: Add DD4HEP Switches for underlying object types
- dd9dac5d - Fixed formatting
- 5eb934a5 - RichDetectors - Generalise method forwarding
- 83e4163d - RichX - Add forwarding for hasCondition and condition methods
- 2cd1bd9c - RichPDPanel - Add forwarding for isLargePD method
- 05292335 - RichPDInfo - Add isLargePD method
- 07a35a34 - RichFutureDAQ - Remove any usage of DeRichSystem
- 62f5e7aa - RichSmartIDs - migrate from DeRichSystem to PDInfo
- 5392adf0 - RichPDMDBEncodeMapping - Fix input condition locations
- ba0b686d - remove obsolete IRichRefractiveIndex.h interface
- 85bcd439 - RichDetectors: Add wrapper classes for radiator volumes
- 0cb562e7 - Detectors::Rich1 : remove unneccessary namespace
- 6dcb2f1a - RichRadIntersection - make radiator pointer type agnostic during DD4HEP transistion
- 4b011948 - RichCommonBase - remove Derich forward declaration
- aa980067 - RichFutureUtils - migrate to Radiator wrappers
- 1410a7b6 - RichInterfaces - remove Rich::IRefractiveIndex from dictionary
- f13e0f86 - RichTrackSegment - define local type for intersections
- 1224458d - Fixed formatting
- 659bd6d7 - RichPDInfo - add method to access all PMT SmartIDs
- c1a8d31d - RichX - Add beampipe type specification
- 6f7bd421 - RichGeomPhoton - avoid empty comments
- 2ed7e85a - Remove IRichGenericHPDAnalysisTool.h tool interface
- 966c5daa - Remove IRichAddBackground.h tool interface
- 4fc0c497 - Remove IRichRadiatorTool.h interface
- 47801b44 - remove IRichDetParameters.h
- 3eea993d - remove IRichSnellsLawRefraction.h
- bb3c5a51 - remove IRichMCTrackInfoTool.h interface
- 29bdaecd - remove IRichRayTracing.h
- 89fafa63 - remove IRichPixelSuppressionTool interface
- 012bc41c - RichPDPanel: Fix support for legacy 'classic' PMTs
Toggle commit list-
9fd5af97...233a3df4 - 12 commits from branch
- Resolved by Rosen Matev
Hi @jonrob, is this ready to be tested again?
added modernisation label