|
DUNE-DAQ
DUNE Trigger and Data Acquisition software
|
Abstract class for the TPG pipeline. More...
#include <TPGPipeline.hpp>
Public Types | |
| using | processor_t = T |
| Processor type to use. Generally AVX. | |
| using | signal_t = U |
| Signal type to use. Generally __m256i. | |
Public Member Functions | |
| virtual | ~TPGPipeline ()=default |
| virtual void | configure (const std::vector< std::pair< std::string, nlohmann::json > > configs, const std::vector< std::pair< dunedaq::trgdataformats::channel_t, int16_t > > channel_plane_numbers) |
| Configure the pieces to the pipeline. | |
| virtual std::vector< dunedaq::trgdataformats::TriggerPrimitive > | process (const signal_t &signal) |
| Process a signal through the pipeline. | |
| virtual bool | check_for_tps (const signal_t &tp_mask)=0 |
| Pure virtual function that will check if any TPs can be generated. | |
| virtual signal_t | save_state (const signal_t &processed_signal)=0 |
| Pure virtual function that will save the state of the generation. | |
| virtual std::vector< dunedaq::trgdataformats::TriggerPrimitive > | generate_tps (const signal_t &tp_mask)=0 |
| Pure virtual function that will generate TPs given a mask to draw from. | |
| virtual std::vector< std::shared_ptr< AbstractProcessor< signal_t > > > | get_all_processor_references () |
| Return reference to all processors in this pipeline. | |
| virtual void | set_sot_minima (const std::vector< uint16_t > &sot_minima) |
| Set the samples over threshold minimum values. | |
Protected Attributes | |
| signal_t | m_adc_integral_lo {} |
| The on-going ADC integral for channels that are considered active. | |
| signal_t | m_adc_integral_hi {} |
| signal_t | m_adc_peak {} |
| The ADC peak for channels that are considered active. | |
| signal_t | m_samples_over_threshold {} |
| The samples over threshold for channels that are considered active. | |
| signal_t | m_samples_to_peak {} |
The number of samples from time_start to the ADC peak. | |
| dunedaq::trgdataformats::channel_t | m_channels [16] |
| Detector channel numbers for the 16 channels that are being processed. | |
| int16_t | m_plane_numbers [16] |
| Detector plane numbers for the 16 channels that are being processed. | |
| uint16_t | m_sot_minima [3] |
The samples over threshold minimum that a TP from plane i must have. | |
| std::shared_ptr< AbstractFactory< processor_t > > | m_factory = AbstractFactory<processor_t>::get_instance() |
| Processor factory singleton. | |
| std::shared_ptr< processor_t > | m_processor_head |
| Processor head to start from. | |
Abstract class for the TPG pipeline.
Definition at line 29 of file TPGPipeline.hpp.
| using tpglibs::TPGPipeline< T, U >::processor_t = T |
Processor type to use. Generally AVX.
Definition at line 32 of file TPGPipeline.hpp.
| using tpglibs::TPGPipeline< T, U >::signal_t = U |
Signal type to use. Generally __m256i.
Definition at line 34 of file TPGPipeline.hpp.
|
virtualdefault |
|
pure virtual |
Pure virtual function that will check if any TPs can be generated.
Implemented in tpglibs::AVXPipeline.
|
inlinevirtual |
Configure the pieces to the pipeline.
| configs | Vector of processors and configurations to be used. |
| channel_plane_numbers | Vector of channel numbers and their plane numbers. |
Definition at line 44 of file TPGPipeline.hpp.
|
pure virtual |
Pure virtual function that will generate TPs given a mask to draw from.
Implemented in tpglibs::AVXPipeline.
|
inlinevirtual |
Return reference to all processors in this pipeline.
Definition at line 99 of file TPGPipeline.hpp.
|
inlinevirtual |
Process a signal through the pipeline.
Definition at line 75 of file TPGPipeline.hpp.
|
pure virtual |
Pure virtual function that will save the state of the generation.
Implemented in tpglibs::AVXPipeline.
|
inlinevirtual |
Set the samples over threshold minimum values.
Definition at line 112 of file TPGPipeline.hpp.
|
protected |
Definition at line 122 of file TPGPipeline.hpp.
|
protected |
The on-going ADC integral for channels that are considered active.
Definition at line 121 of file TPGPipeline.hpp.
|
protected |
The ADC peak for channels that are considered active.
Definition at line 124 of file TPGPipeline.hpp.
|
protected |
Detector channel numbers for the 16 channels that are being processed.
Definition at line 130 of file TPGPipeline.hpp.
|
protected |
Processor factory singleton.
Definition at line 136 of file TPGPipeline.hpp.
|
protected |
Detector plane numbers for the 16 channels that are being processed.
Definition at line 132 of file TPGPipeline.hpp.
|
protected |
Processor head to start from.
Definition at line 138 of file TPGPipeline.hpp.
|
protected |
The samples over threshold for channels that are considered active.
Definition at line 126 of file TPGPipeline.hpp.
|
protected |
The number of samples from time_start to the ADC peak.
Definition at line 128 of file TPGPipeline.hpp.
|
protected |
The samples over threshold minimum that a TP from plane i must have.
Definition at line 134 of file TPGPipeline.hpp.