16 """check the 2D skim with Tracks StoreArray"""
19 """event function of the is2DSkim class"""
20 Tracks = ROOT.Belle2.PyStoreArray(
"Tracks")
21 TRGGRLT3DUnpackerStores = ROOT.Belle2.PyStoreArray(
"TRGCDCT3DUnpackerStores")
29 trackResult = track.getTrackFitResultWithClosestMass(ROOT.Belle2.Const.pion)
30 if trackResult.getPValue() > 0.1:
31 areTracksClean =
False
35 trackResult = track.getTrackFitResultWithClosestMass(ROOT.Belle2.Const.pion)
39 if (trackResult.getHitPatternCDC().getSLayerNHits(2 * iAx) > 3):
42 if (trackResult.getHitPatternCDC().getSLayerNHits(2 * iSt + 1) > 3):
50 for iClk, data
in enumerate(TRGGRLT3DUnpackerStores):
51 if (data.m_t2d_fnf != 0):
54 self.return_value(isTwoTrack
and is2D
and areTracksClean
and enoughHits)
57 if __name__ ==
'__main__':
59 basf2.use_central_database(
"development")
61 basf2.use_local_database(ROOT.Belle2.FileSystem.findFile(
"data/trg/cdc/db_CDCFudgeFactorsForSigma.txt"),
"localdb")
63 empty_path = basf2.create_path()
64 skim = basf2.register_module(
is2DSkim())
65 skim.if_value(
'=0', empty_path, basf2.AfterConditionPath.END)
68 main = basf2.create_path()
70 main.add_module(
'RootInput')
71 main.add_module(
'TRGCDCT3DUnpacker')
73 main.add_module(
'Gearbox')
74 main.add_module(
'TRGCDCT3DConverter',
75 hitCollectionName=
'FirmCDCTriggerSegmentHits',
76 addTSToDatastore=
True,
77 EventTimeName=
'FirmBinnedEventT0',
78 addEventTimeToDatastore=
True,
79 inputCollectionName=
'FirmTRGCDC2DFinderTracks',
80 add2DFinderToDatastore=
True,
81 outputCollectionName=
'FirmTRGCDC3DFitterTracks',
82 add3DToDatastore=
True,
84 firmwareResultCollectionName=
'TRGCDCT3DUnpackerStores',
89 'TRGCDCT3DUnpackerStores',
90 'FirmCDCTriggerSegmentHits',
92 'FirmTRGCDC2DFinderTracks',
93 'FirmTRGCDC3DFitterTracks'])
96 print(basf2.statistics)