def isValidEvent(indata, helpers): #last_ADMuon_timestamp, last_ShowerMuon_timestamp, #last_ADMuon_timestamp2, last_ShowerMuon_timestamp2): if not isValidTriggerType(indata.triggerType): return (False, ['not_adevent', 'trigger: {}'.format(indata.triggerType)]) reasons = [] detector = indata.detector energy = indata.energy is_resid_flasher = flashers.isFlasher_nH_no_resid( flashers.fID(indata.fMax, indata.fQuad), None, indata.f2inch_maxQ, indata.detector, indata.Q1, indata.Q2, indata.x, indata.y, indata.z, ) if is_resid_flasher != 0: reasons.append('residual_flasher') if not isADEvent_THU(detector, energy): reasons.append('not_adevent') return (len(reasons) == 0, reasons)
def load_adevent_buf(buf, indata, loopIndex): load_basic_TTree(buf, indata, loopIndex) assign_value(buf.fQuad, indata.fQuad) assign_value(buf.fMax, indata.fMax) assign_value(buf.fPSD_t1, indata.fPSD_t1) assign_value(buf.fPSD_t2, indata.fPSD_t2) assign_value(buf.f2inch_maxQ, indata.f2inch_maxQ) assign_value(buf.x, indata.x) assign_value(buf.y, indata.y) assign_value(buf.z, indata.z) assign_value(buf.fID, flashers.fID(indata.fMax, indata.fQuad)) assign_value(buf.fPSD, flashers.fPSD(indata.fPSD_t1, indata.fPSD_t2))
def isADEvent(indata, ads): return (indata.detector in ads and indata.energy > 0.7 and int(flashers.isFlasher_nH(flashers.fID(indata.fMax, indata.fQuad), None, indata.f2inch_maxQ, indata.detector)) == 0 and (indata.triggerType & 0x1100) > 0)