Belle II Software development
mdst_compatibility-v02-01-00.py
1#!/usr/bin/env python3
2
3
10
11"""
12Test backwards compatibility for an mdst file produced with release-02-01-00.
13
14See https://xwiki.desy.de/xwiki/rest/p/0a372 if this test fails.
15
16CHANGES since release-02-01-00:
17
18- EventLevelClusteringInfo
19 + nKLMDigitsMultiStrip
20 + nECLShowers
21 + nECLLocalMaximums
22 + nECLTriggerCells
23- EventMetaData:
24 + isEndOfRun
25- EventLevelTrackingInfo:
26 + hasSVDCKFAbortionFlag/setSVDCKFAbortionFlag
27 + hasPXDCKFAbortionFlag/setPXDCKFAbortionFlag
28 + hasSVDSpacePointCreatorAbortionFlag/setSVDSpacePointCreatorAbortionFlag
29- ECLCluster:
30 + getMinTrkDistanceID
31 + getPulseShapeDiscriminationMVA added
32 + hasFailedFitTime
33 + hasFailedTimeResolution
34 - getCovarianceMatrixAsArray removed
35- TRGSummary:
36 + getTimQuality added
37 + isPoissonInInjectionVeto
38 * added getters to map bit names to numbers (getInputBitNumber, getOutputBitNumber)
39 The mapping is from the database and doesn't affect mdst content and is thus not tested here.
40- SoftwareTriggerResult:
41 * non-prescaled results added
42- TrackFitResult:
43 + ndf
44 + chi2
45 + remove the const classifier of TrackFitResults and add a function to update the contents
46 + updateTrackFitResult
47 + mask
48- Particle masses:
49 * The particle masses have been updated to PDG 2020. As a result, the
50 energies corresponding to the measured momenta became slightly different.
51- EventLevelTriggerTimeInfo
52 * added new storage element for information from the Trigger Timing Distribution (TTD)
53- Track:
54 + statusBitmap and getStatusBit
55 + getTrackTime added
56 + wasRefined
57 + isFlippedAndRefitted
58 + getTrackFitResultByName
59 + getTrackFitResultsByName
60 + getTrackFitResultWithClosestMassByName
61"""
62
63from basf2 import create_path, process, set_random_seed, find_file
64from b2test_utils import configure_logging_for_tests
65from mdst import add_mdst_dump
66
67if __name__ == "__main__":
68 configure_logging_for_tests()
69 set_random_seed(1)
70 main = create_path()
71 main.add_module("RootInput", inputFileName=find_file("mdst/tests/mdst-v02-01-00.root"))
72 main.add_module("EventInfoPrinter")
73 add_mdst_dump(main, True)
74 process(main, 3)