DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
rawdatautils.unpack.utils.TriggerCandidateUnpacker Class Reference
Inheritance diagram for rawdatautils.unpack.utils.TriggerCandidateUnpacker:
[legend]
Collaboration diagram for rawdatautils.unpack.utils.TriggerCandidateUnpacker:
[legend]

Public Member Functions

 __init__ (self, channel_map=None)
 
 get_n_obj (self, frag)
 
 get_trg_data_version (self, frag)
 
 get_trg_obj_data (self, frag)
 
- Public Member Functions inherited from rawdatautils.unpack.utils.TriggerDataUnpacker
 get_trg_data (self, frag)
 
 get_trg_header_data (self, frag)
 
- Public Member Functions inherited from rawdatautils.unpack.utils.FragmentUnpacker
 get_det_data (self, in_data)
 
 get_frh_data (self, frag)
 
 get_all_data (self, in_data)
 
- Public Member Functions inherited from rawdatautils.unpack.utils.Unpacker

Public Attributes

 channel_map = NullChannelMap
 
- Public Attributes inherited from rawdatautils.unpack.utils.Unpacker
 index = index
 

Static Public Attributes

 trg_obj = trgdataformats.TriggerCandidate
 
- Static Public Attributes inherited from rawdatautils.unpack.utils.TriggerDataUnpacker
bool is_trigger_unpacker = True
 
- Static Public Attributes inherited from rawdatautils.unpack.utils.FragmentUnpacker
bool is_fragment_unpacker = True
 
bool is_detector_unpacker = False
 
bool is_trigger_unpacker = False
 
- Static Public Attributes inherited from rawdatautils.unpack.utils.Unpacker
bool is_fragment_unpacker = False
 
bool is_detector_unpacker = False
 
bool is_trigger_unpacker = False
 

Detailed Description

Definition at line 288 of file utils.py.

Constructor & Destructor Documentation

◆ __init__()

rawdatautils.unpack.utils.TriggerCandidateUnpacker.__init__ ( self,
channel_map = None )

Reimplemented from rawdatautils.unpack.utils.Unpacker.

Definition at line 292 of file utils.py.

292 def __init__(self,channel_map=None):
293 super().__init__()
294 if not channel_map:
295 self.channel_map = NullChannelMap
296 elif 'TPC' in channel_map:
297 self.channel_map = detchannelmaps.make_tpc_map(channel_map)
298 elif 'PDS' in channel_map:
299 self.channel_map = detchannelmaps.make_pds_map(channel_map)
300 else:
301 self.channel_map = NullChannelMap
302

Member Function Documentation

◆ get_n_obj()

rawdatautils.unpack.utils.TriggerCandidateUnpacker.get_n_obj ( self,
frag )

Reimplemented from rawdatautils.unpack.utils.FragmentUnpacker.

Definition at line 303 of file utils.py.

303 def get_n_obj(self,frag):
304 frag_data_size = frag.get_data_size()
305 size_so_far = 0
306 n_tobjs = 0
307 while size_so_far < frag_data_size:
308 tobj = self.trg_obj(frag.get_data(size_so_far))
309 n_tobjs = n_tobjs + 1
310 size_so_far = size_so_far + tobj.sizeof()
311 return n_tobjs
312

◆ get_trg_data_version()

rawdatautils.unpack.utils.TriggerCandidateUnpacker.get_trg_data_version ( self,
frag )

Definition at line 313 of file utils.py.

313 def get_trg_data_version(self,frag):
314 if self.get_n_obj(frag)==0:
315 return None
316 trig_obj = self.trg_obj(frag.get_data())
317 return trig_obj.data.version
318

◆ get_trg_obj_data()

rawdatautils.unpack.utils.TriggerCandidateUnpacker.get_trg_obj_data ( self,
frag )

Definition at line 319 of file utils.py.

319 def get_trg_obj_data(self,frag):
320 frh = frag.get_header()
321 tc_list = []
322 ta_list = []
323 size_so_far = 0
324 for i_tc in range(self.get_n_obj(frag)):
325 tc = self.trg_obj(frag.get_data(size_so_far))
326 size_so_far = size_so_far + tc.sizeof()
327 tc_list.append( TriggerCandidateData(run=frh.run_number,
328 trigger=frh.trigger_number,
329 sequence=frh.sequence_number,
330 src_id=frh.element_id.id,
331 id=i_tc,
332 time_start=tc.data.time_start,
333 time_end=tc.data.time_end,
334 time_candidate=tc.data.time_candidate,
335 detid=tc.data.detid,
336 tc_type=tc.data.type,
337 algorithm=tc.data.algorithm,
338 n_tas=len(tc) ) )
339 for i_ta in range(len(tc)):
340 ta = tc[i_ta]
341 ch_info_ta = self.channel_map.get_channel_info_from_offline_channel(ta.channel_peak)
342 ta_list.append( TriggerActivityData(run=frh.run_number,
343 trigger=frh.trigger_number,
344 sequence=frh.sequence_number,
345 src_id=frh.element_id.id,
346 id=i_ta,
347 time_start=ta.time_start,
348 time_end=ta.time_end,
349 time_peak=ta.time_peak,
350 time_activity=ta.time_activity,
351 channel_start=ta.channel_start,
352 channel_end=ta.channel_end,
353 channel_peak=ta.channel_peak,
354 plane=self.channel_map.get_plane_from_offline_channel(ta.channel_peak),
355 element=ch_info_ta.element,
356 adc_integral=ta.adc_integral,
357 adc_peak=ta.adc_peak,
358 detid=ta.detid,
359 ta_type=ta.type,
360 algorithm=ta.algorithm,
361 n_tps=-1,
362 id_tc=i_tc) )
363 if len(ta_list)==0:
364 ta_list=None
365 return tc_list, ta_list
366
367

Member Data Documentation

◆ channel_map

rawdatautils.unpack.utils.TriggerCandidateUnpacker.channel_map = NullChannelMap

Definition at line 295 of file utils.py.

◆ trg_obj

rawdatautils.unpack.utils.TriggerCandidateUnpacker.trg_obj = trgdataformats.TriggerCandidate
static

Definition at line 290 of file utils.py.


The documentation for this class was generated from the following file: