234 def get_trg_obj_data(self,frag):
235 frh = frag.get_header()
236 ta_list = []
237 tpd_list = []
238 size_so_far = 0
239 for i_ta in range(self.get_n_obj(frag)):
240 ta= self.trg_obj(frag.get_data(size_so_far))
241 size_so_far = size_so_far + ta.sizeof()
242 ch_info_ta = self.channel_map.get_channel_info_from_offline_channel(ta.data.channel_peak)
243 ta_list.append( TriggerActivityData(run=frh.run_number,
244 trigger=frh.trigger_number,
245 sequence=frh.sequence_number,
246 src_id=frh.element_id.id,
247 id=i_ta,
248 time_start=ta.data.time_start,
249 time_end=ta.data.time_end,
250 time_peak=ta.data.time_peak,
251 time_activity=ta.data.time_activity,
252 channel_start=ta.data.channel_start,
253 channel_end=ta.data.channel_end,
254 channel_peak=ta.data.channel_peak,
255 plane=self.channel_map.get_plane_from_offline_channel(ta.data.channel_peak),
256 element=ch_info_ta.element,
257 adc_integral=ta.data.adc_integral,
258 adc_peak=ta.data.adc_peak,
259 detid=ta.data.detid,
260 ta_type=ta.data.type,
261 algorithm=ta.data.algorithm,
262 n_tps=len(ta),
263 id_tc=-1) )
264 for i_tp in range(len(ta)):
265 tp = ta[i_tp]
266 ch_info_tp = self.channel_map.get_channel_info_from_offline_channel(tp.channel)
267 tpd_list.append( TriggerPrimitiveData(run=frh.run_number,
268 trigger=frh.trigger_number,
269 sequence=frh.sequence_number,
270 src_id=frh.element_id.id,
271 time_start=tp.time_start,
272 samples_to_peak=tp.samples_to_peak,
273 samples_over_threshold=tp.samples_over_threshold,
274 channel=tp.channel,
275 plane=self.channel_map.get_plane_from_offline_channel(tp.channel),
276 element=ch_info_tp.element,
277 adc_integral=tp.adc_integral,
278 adc_peak=tp.adc_peak,
279 detid=tp.detid,
280 flag=tp.flag,
281 id_ta=i_ta) )
282
283 if len(tpd_list)==0:
284 tpd_list=None
285 return ta_list, tpd_list
286