PerfMonComps: Refactor the PerfMonMT measurements/data and clean things up a little bit
Although there seems to be a lot of changes in this MR the core functionality shouldn't actually change. We split the single Measurement
/MeasurementData
into dedicated structs. We now have two measurements: ComponentMeasurement
and SnapshotMeasurement
, and three data structs to hold these: ComponentData
, EventLevelData
, and SnapshotData
. This way, we can unify the interface a little bit (i.e. no ad-hoc fnc_component
, fnc_snapshot
etc. anymore). While at it, I also tried to unify the naming conventions a bit but that's not completely done yet.
Additionally, we now also store the component-level wall-time measurements in the JSON that were previously excluded.