introduce SystematicsCache helper class template
This should make it simpler for CP developers to implement a (close
to) optimal version of an ISystematicsTool
or
IReentrantSystematicsTool
. We do have a very specific recommendation on how that should be done, but it is not exactly fool-proof, particularly if you are trying to do it in a thread-safe manner.
This is based on a discussion I had with @christos a while back, who had suggested that it was actually not that straightforward and a helper class would be helpful.
I ended up modifying one of the muon tools because it was the one that most closely followed our actual recommendation, making the update to the new helper class a straightforward replacement. Not sure if the muon people have any reason to object. @yoyamagu?