DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
rawdatautils.unpack.utils.TriggerActivityUnpacker Class Reference
Inheritance diagram for rawdatautils.unpack.utils.TriggerActivityUnpacker:
[legend]
Collaboration diagram for rawdatautils.unpack.utils.TriggerActivityUnpacker:
[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 = detchannelmaps.make_tpc_map(channel_map)
 
- Public Attributes inherited from rawdatautils.unpack.utils.Unpacker
 index = index
 

Static Public Attributes

 trg_obj = trgdataformats.TriggerActivity
 
- 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 206 of file utils.py.

Constructor & Destructor Documentation

◆ __init__()

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

Reimplemented from rawdatautils.unpack.utils.Unpacker.

Definition at line 210 of file utils.py.

210 def __init__(self,channel_map=None):
211 super().__init__()
212 if 'TPC' in channel_map:
213 self.channel_map = detchannelmaps.make_tpc_map(channel_map)
214 elif 'PDS' in channel_map:
215 self.channel_map = detchannelmaps.make_pds_map(channel_map)
216 else:
217 self.channel_map = NullChannelMap
218

Member Function Documentation

◆ get_n_obj()

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

Reimplemented from rawdatautils.unpack.utils.FragmentUnpacker.

Definition at line 219 of file utils.py.

219 def get_n_obj(self,frag):
220 frag_data_size = frag.get_data_size()
221 size_so_far = 0
222 n_tobjs = 0
223 while size_so_far < frag_data_size:
224 tobj = self.trg_obj(frag.get_data(size_so_far))
225 n_tobjs = n_tobjs + 1
226 size_so_far = size_so_far + tobj.sizeof()
227 return n_tobjs
228

◆ get_trg_data_version()

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

Definition at line 229 of file utils.py.

229 def get_trg_data_version(self,frag):
230 if self.get_n_obj(frag)==0:
231 return None
232 trig_obj = self.trg_obj(frag.get_data())
233 return trig_obj.data.version
234

◆ get_trg_obj_data()

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

Definition at line 235 of file utils.py.

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

Member Data Documentation

◆ channel_map

rawdatautils.unpack.utils.TriggerActivityUnpacker.channel_map = detchannelmaps.make_tpc_map(channel_map)

Definition at line 213 of file utils.py.

◆ trg_obj

rawdatautils.unpack.utils.TriggerActivityUnpacker.trg_obj = trgdataformats.TriggerActivity
static

Definition at line 208 of file utils.py.


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