145 _info = self.
msg.info
146 _error= self.
msg.error
148 for evtinfocls
in (
'xAOD::EventInfo',
'EventInfo'):
150 evtinfo = self.
sg.retrieve (evtinfocls, self.
evt_info)
151 except Exception
as e:
152 _info (
'could not retrieve %r at [%s]\n caught exception:\n%r', evtinfocls, self.
evt_info, e)
155 _info (
'retrieved \'None\' for %r at [%s]', evtinfocls, self.
evt_info)
159 _error (
"could not retrieve 'EventInfo' or 'xAOD::EventInfo' at [%s]", self.
evt_info)
160 return StatusCode.Failure
164 if evtinfocls ==
'EventInfo':
165 evtid = evtinfo.event_ID()
166 runnbr = evtid.run_number()
167 evtnbr = evtid.event_number()
168 elif evtinfocls ==
'xAOD::EventInfo':
170 runnbr = evtinfo.runNumber()
172 runnbr = evtinfo.mcChannelNumber()
173 evtnbr = evtinfo.eventNumber()
176 filter_passed = self.
filter_fct (runnbr, evtnbr)
178 if (runnbr,evtnbr)
in self.
evt_list or \
185 if not isinstance(filter_passed, bool):
186 self.
msg.error (
'invalid filter-passed decision: %r', filter_passed)
187 return StatusCode.Failure
189 self.setFilterPassed (filter_passed)
196 _info (
'[run=%s | evt=%s] ==> [%s]',
197 str(runnbr).zfill(5),
198 str(evtnbr).zfill(5),
200 return StatusCode.Success