Skip to content

TRT_BaseElement continue MT refactoring: Use CachedValue instead of mutable/mutex

ATLASRECTS-5781 (ATR-22378) : Breaking in parts as trying to do all thing together back fired ....

The main changes:

- mutable std::vector<const Trk::Surface*> m_surfaces ATLAS_THREAD_SAFE; // Guarded by m_mutex
-  mutable std::mutex m_mutex;

becomes

    CxxUtils::CachedValue<std::vector<const Trk::Surface*>> m_surfaces; 

Use a helper function for setting the "straw" caches.

  1. Use ovverride/final/remove virtual where applicable/possible.

Mentiong @oda

Merge request reports