|
DUNE-DAQ
DUNE Trigger and Data Acquisition software
|
#include <TriggerActivityMaker.hpp>
Public Member Functions | |
| virtual | ~TriggerActivityMaker ()=default |
| void | operator() (const TriggerPrimitive &input_tp, std::vector< TriggerActivity > &output_ta) |
| virtual void | process (const TriggerPrimitive &input_tp, std::vector< TriggerActivity > &output_ta)=0 |
| TP processing function that creates & fills TAs. | |
| virtual bool | preprocess (const TriggerPrimitive &input_tp) |
| TP pre-processing/filtering. | |
| virtual void | postprocess (std::vector< TriggerActivity > &output_ta) |
| Post-processing/filtering of the TAs, e.g. prescale. | |
| virtual void | flush (timestamp_t, std::vector< TriggerActivity > &) |
| virtual void | configure (const nlohmann::json &config) |
Public Attributes | |
| std::atomic< uint64_t > | m_data_vs_system_time = 0 |
| std::atomic< uint64_t > | m_initial_offset = 0 |
| uint64_t | m_prescale = 1 |
| Configurable prescale factor. | |
| uint64_t | m_ta_count = 0 |
| TA made count for prescaling. | |
| uint32_t | m_max_samples_over_threshold = std::numeric_limits<uint32_t>::max() |
| Time-over-threshold TP filtering. | |
Definition at line 28 of file TriggerActivityMaker.hpp.
|
virtualdefault |
|
inlinevirtual |
Reimplemented in triggeralgs::TAMakerADCSimpleWindowAlgorithm, triggeralgs::TAMakerBundleNAlgorithm, triggeralgs::TAMakerChannelAdjacencyAlgorithm, triggeralgs::TAMakerChannelDistanceAlgorithm, triggeralgs::TAMakerDBSCANAlgorithm, triggeralgs::TAMakerHorizontalMuonAlgorithm, triggeralgs::TAMakerMichelElectronAlgorithm, triggeralgs::TAMakerPlaneCoincidenceAlgorithm, and triggeralgs::TAMakerPrescaleAlgorithm.
Definition at line 111 of file TriggerActivityMaker.hpp.
|
inlinevirtual |
Reimplemented in triggeralgs::TAMakerSupernovaAlgorithm.
Definition at line 110 of file TriggerActivityMaker.hpp.
|
inline |
Definition at line 32 of file TriggerActivityMaker.hpp.
|
inlinevirtual |
Post-processing/filtering of the TAs, e.g. prescale.
Takes a vector of TAs and removes ones that we want to filter out, e.g. based on prescaling.
| output_ta[out] | output triggeractivity vector |
Definition at line 85 of file TriggerActivityMaker.hpp.
|
inlinevirtual |
TP pre-processing/filtering.
Takes a TP and returns true or false depending whether we want to process that TP into a TA algorithm.
: Implement tp-filtering, e.g. SOT, plane, channel and whatnot
: Implement something smarter & more efficient if no filtering: vector of functions, or c-o-c
| [in] | intput_tp | input TP reference for filtering |
Definition at line 66 of file TriggerActivityMaker.hpp.
|
pure virtual |
TP processing function that creates & fills TAs.
| input_tp[in] | Input TP for the triggering algorithm |
| output_ta[out] | Output vector of TAs to fill by the algorithm |
Implemented in triggeralgs::TAMakerADCSimpleWindowAlgorithm, triggeralgs::TAMakerBundleNAlgorithm, triggeralgs::TAMakerChannelAdjacencyAlgorithm, triggeralgs::TAMakerChannelDistanceAlgorithm, triggeralgs::TAMakerDBSCANAlgorithm, triggeralgs::TAMakerHorizontalMuonAlgorithm, triggeralgs::TAMakerMichelElectronAlgorithm, triggeralgs::TAMakerPlaneCoincidenceAlgorithm, triggeralgs::TAMakerPrescaleAlgorithm, and triggeralgs::TAMakerSupernovaAlgorithm.
| std::atomic<uint64_t> triggeralgs::TriggerActivityMaker::m_data_vs_system_time = 0 |
Definition at line 127 of file TriggerActivityMaker.hpp.
| std::atomic<uint64_t> triggeralgs::TriggerActivityMaker::m_initial_offset = 0 |
Definition at line 128 of file TriggerActivityMaker.hpp.
| uint32_t triggeralgs::TriggerActivityMaker::m_max_samples_over_threshold = std::numeric_limits<uint32_t>::max() |
Time-over-threshold TP filtering.
Definition at line 136 of file TriggerActivityMaker.hpp.
| uint64_t triggeralgs::TriggerActivityMaker::m_prescale = 1 |
Configurable prescale factor.
Definition at line 131 of file TriggerActivityMaker.hpp.
| uint64_t triggeralgs::TriggerActivityMaker::m_ta_count = 0 |
TA made count for prescaling.
Definition at line 133 of file TriggerActivityMaker.hpp.