Write surface bounds once more.
In ATLASRECTS-6858, we realised that we had been writing out surfaces and silently dropping their bounds. For some, e.g. CylinderSurface
, this makes them invalid and unusable when they are read back in.
I experimented with several possible fixes, and after discussion in RIG, decided that we simply had to revisit our 10 year old decision to ignore bounds.
In this MR I attempt to restore the BoundSurfaceCnv
, create a new BoundSurface_p2
(because it now inherits from Surface_p2
and increment the TrackCollection
top level object to hold the new collections.
This seems to have a pretty negligible increase in the ESD size, from the 25 event test.
Taking an unslimmed InDet TrackCollection, the size changes as follows:
26410.442 kb 5538.593 kb 221.544 kb 0.000 25 (B) Trk::TrackCollection_tlp7_CombinedInDetTracks
from the original:
26283.019 kb 5397.960 kb 215.918 kb 0.000 25 (B) Trk::TrackCollection_tlp6_CombinedInDetTracks
The total 25 event ESD changes from 26Mb to 27Mb.
With thanks to @mnowak for all his help.