Test a config struct in InDetRttPlots
When running IDPVM on the grid with a high detail level, we occasionally run into RAM shortages due to the sheer number of booked plot. In addition, a use-case recently surfaced to fill a set of (eff, reso, hit) plots for tracks matched to certain truth PDG IDs (muons from Z, eles from Z, etc).
To accomodate both, this MR implements a simple mechanism allowing a more systmatic level of control over the InDetRttPlots
histo booking via a config struct that is set within the InDetPhysValMonitoringTool
, taking into account that tool's python config.
For now, we retain the "daughter" plot classes within InDetRttPlots
in an unchanged manner, and also retain the functionality of the existing InDetPhysValMonitoringTool
properties.
A few extra options are added to the IDPVM tool, exploiting the config struct to enable/disable some of the main RAM / disk fillers we had so far.
In the future, we can consider replacing the struct by directly setting up the RttPlot content from within the IDPVM tool via a generic "booking" interface - but this would require more extensive changes also to the interfaces of the plot classes (the RttPlots
would then become a container for abstract plot payloads). Hence here we focus on a minimal but extensible setup allowing more control over the histo booking.
For the PhysVal use case, the doValidateMuonMatchedTracks
and doValidateElectronMatchedTracks
flags added here should be interesting, following the discussion in https://its.cern.ch/jira/projects/ATLPHYSVAL/issues/ATLPHYSVAL-761