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 287 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 291 of file utils.py.

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

Member Function Documentation

◆ get_n_obj()

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

Reimplemented from rawdatautils.unpack.utils.FragmentUnpacker.

Definition at line 302 of file utils.py.

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

◆ get_trg_data_version()

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

Definition at line 312 of file utils.py.

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

◆ get_trg_obj_data()

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

Definition at line 318 of file utils.py.

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

Member Data Documentation

◆ channel_map

rawdatautils.unpack.utils.TriggerCandidateUnpacker.channel_map = NullChannelMap

Definition at line 294 of file utils.py.

◆ trg_obj

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

Definition at line 289 of file utils.py.


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