Skip to content

Adapt to the new re-entrant TransportSvc calls

Christopher Rob Jones requested to merge UseReentrantTransportSvcCalls into master

Adapts to LHCb!422 (merged)

In the Rich, the tool in question is never going to be used in a threaded application (I have something different in RichFuture) so I just create the cache once and save it, in a non thread safe way, as effectively what was happening before inside the TransportSvc.

DetailedMaterialLocator needs to be made thread safe though. For the moment I have done this in a non optimal way, by just creating the cache before each call.

      auto cache = m_transportSvc->createCache(); // Need a better solution
      rc = m_transportSvc->intersections_r( start, vect, mintick, maxtick, intersepts, 
                                            cache, m_minRadThickness, m_geometry);

But this needs to be handled better. I think though that can only be correctly done by pushing the creating and handling of the cache further up the call stack.

Merge request reports