Three proposed improvements to the LhoodMM_tools class of the FakeBkgTools package, without impact on physics results.
@slawlor reported that the saveProgress() function of the LhoodMM_tools tool could be pretty slow (hours) for large number of events (>100 k). This seems to be due mostly to a few places where heavy objects are copied inside a loop, while working with references would avoid the overhead. After changing to the latter, @slawlor indicated that the running time is largely reduced.
a couple small memory leaks were removed in saveProgress() by using smart pointers.
the mergeSubJobs() function seemed to be ignoring the ProgressFileDirectory property, making it impossible to process a ROOT file where the results are not stored at top level. This is now fixed.
Bringing this to the attention of @evarnes, the tool expert...