You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
File reading: Reading an HDF5 in a meaningful way.
Reference process_tpstream.cxx for an example on how to do this.
File writing: Write the resultant TPs to a file.
Should the resultant file have both the WIBEthFrames/TDEEthFrames and the new TPs? Requires writing to a raw data HDF5 file.
Should the resultant file only have the new TPs? Could be written to TP stream HDF5 or CSV (as was the previous TPG emulation).
Do we use a flag to mark these TPs as emulated? Requires a change in trgdataformats.
WIBEthFrame sending.
Should an initial, pedestal-setter frame be sent? This would help with online-offline consistency. How is the initial frame generated?
Should on-going TPs that did not complete by the end of the frame be sent or ignored? Data limitations make it impossible to recover the missed waveform, so the TP cannot be completed accurately.
TPGenerator would need to be reset between frames. In terms of TPG, two unique frames cannot be related unless they are continuous in time. This is generally not the case as they should appear as one frame and should not have been separated into two.
How many frames to send? Is this a config/option for the application?
How should different sources be handled? Does the application go through n frames in total or n frames for each source (e.g., n * 40 frames for NP04)?
TDEEthFrame sending.
Are the two frame data types mixed when processing and the resultant TPs a set of both? Is this a config/option of the application which data frame to process?
Does it follow the same design choices as the WIBEthFrame sending? tpglibs assumes the same data format within WIBEthFrames and TDEEthFrames and would handle them the same.
Configuring TPG.
tpglibs was built with configuring via JSON in mind, so an example configuration file will be needed.
AVX vs Native C++.
A user may want the option to use either. This should be a flag.
Native C++ TPG is not yet supported (2024-12-09) in tpglibs.
TPG has changed significantly and the available emulation in https://github.com/DUNE-DAQ/tpgtools is no longer supported. A new emulation workflow is needed and would need to make use of https://github.com/DUNE-DAQ/tpglibs.
process_tpstream.cxxfor an example on how to do this.trgdataformats.TPGeneratorwould need to be reset between frames. In terms of TPG, two unique frames cannot be related unless they are continuous in time. This is generally not the case as they should appear as one frame and should not have been separated into two.nframes in total ornframes for each source (e.g.,n * 40frames for NP04)?tpglibsassumes the same data format within WIBEthFrames and TDEEthFrames and would handle them the same.tpglibswas built with configuring via JSON in mind, so an example configuration file will be needed.tpglibs.