Make sure there is a TGeoNavigator per thread before calling Contains
Compare changes
+ 10
− 0
@@ -27,6 +27,9 @@
@@ -115,6 +118,13 @@ void LHCb::Detector::detail::DeIOVObject::print( int indent, int flg ) const {
Required to make FTHitEfficiencyMonitor work when multi-threaded, as currently the geometry navigation is not configured for multi-threading.
Requires LHCb!4652 (merged) where the number of threads is set.
I provided a detailed description of the relevant functions in LHCb!4652 (merged), and then on slide 8 (titled "Usage") of this very old presentation describing the parallelisation of the ROOT Geometry library (the only relevant documentation I could find) it shows the required change in this MR https://indico.cern.ch/event/193979/contributions/357987/attachments/280434/392148/ParallelizingROOTgeometry.pdf
I think this is the correct ROOT way to do it, but in future we can probably find a better way to do it.
Validated by