23 from ROOT
import Belle2
29 returns True if the event is NOT a random triggered event
34 check RawFTSW to get the event type
39 if not rawFTSW.isValid():
40 B2WARNING(
'No RawFTSW available - event ignored')
47 if rawFTSW[0].GetTRGType(unknownInt) != Belle2.TRGSummary.TTYP_RAND:
55 returns True if the event is a Burst event (number of strips > max number of strips)
56 use set_nMaxStrips(nMaxStrips) to set the max number of strips iof a non-burst event, default is nMaxStrips=5000
65 '''max number of strips for NON-BURST events'''
68 """set the max strips, otherwise 5000"""
77 if not strips.isValid():
78 B2WARNING(
'No SVDShaperDigits - event ignored')
91 returns True if the event is acquired with 6 samples
105 if not eventInfo.isValid():
106 eventInfo = Belle2.PyStoreObjPtr(
'SVDEventInfoSim')
108 if not eventInfo.isValid():
109 B2WARNING(
'No SVDEventInfo/SVDEventInfoSim - event ignored')
115 if eventInfo.getNSamples() == 6:
122 class skimSVDBurstEventsDataSizeModule(basf2.Module):
124 returns True if the event is a Burst event (svd data size above limit))
125 use set_MaxDataSize(maxDataSize) to set the max data sieze of a non-burst event, default is maxDataSize=50kB
131 self.maxDataSize = 50000
133 def set_maxDataSize(self,user_maxDataSize):
134 "set the max strips, otherwise 5000"
136 self.maxDataSize = user_maxDataSize
140 raw = Belle2.PyStoreArray('RawSVDs')
142 if not raw.isValid():
143 B2WARNING('No RawSVDs - event ignored')
148 StoreArray<RawSVD> rawsvd;
149 int nsvd = rawsvd.getEntries();
151 for (int i = 0; i < nsvd; i++) { // Loop over COPPERs
152 int nbytes = rawsvd[i]->GetBlockNwords(0) * sizeof(unsigned int);
159 svdSize+=aRaw.GetBlockNWords(0)*sizeof(unsigned int)
160 if raw.getEntries() > self.maxDataSize:
169 returns True if TriggerBin of the event is the selected one
170 use set_tb(tb) to set the value of the selected TriggerBin (0,1,2,3)
178 ''' trigger bin to select'''
181 '''set the trigger bin, otherwise 99, i.e. no selection'''
188 if int(self.
tb) == 99:
193 if not eventInfo.isValid():
194 B2ERROR(
'No SVDEventInfo - event ignored')
199 if ord(eventInfo.getModeByte().getTriggerBin()) == int(self.
tb):