DUNE-DAQ
DUNE Trigger and Data Acquisition software
|
#include <TriggerCandidateMaker.hpp>
Public Member Functions | |
virtual | ~TriggerCandidateMaker ()=default |
void | operator() (const TriggerActivity &input_ta, std::vector< TriggerCandidate > &output_tc) |
virtual void | process (const TriggerActivity &input_ta, std::vector< TriggerCandidate > &output_tc)=0 |
TA processing function that creates & fills TCs. | |
virtual bool | preprocess (const TriggerActivity &) |
TA pre-processing/filtering. | |
virtual void | postprocess (std::vector< TriggerCandidate > &output_tc) |
Post-processing/filtering of the TCs, e.g. prescale. | |
virtual void | flush (timestamp_t, std::vector< TriggerCandidate > &) |
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_tc_count = 0 |
TC made count for prescaling. | |
TriggerCandidate::Type | m_tc_type_out = TriggerCandidate::Type::kUnknown |
Configurable TC type output. | |
Definition at line 28 of file TriggerCandidateMaker.hpp.
|
virtualdefault |
|
inlinevirtual |
Reimplemented in triggeralgs::TCMakerADCSimpleWindowAlgorithm, triggeralgs::TCMakerBundleNAlgorithm, triggeralgs::TCMakerChannelAdjacencyAlgorithm, triggeralgs::TCMakerChannelDistanceAlgorithm, triggeralgs::TCMakerDBSCANAlgorithm, triggeralgs::TCMakerHorizontalMuonAlgorithm, triggeralgs::TCMakerMichelElectronAlgorithm, triggeralgs::TCMakerPlaneCoincidenceAlgorithm, and triggeralgs::TCMakerPrescaleAlgorithm.
Definition at line 101 of file TriggerCandidateMaker.hpp.
|
inlinevirtual |
Definition at line 100 of file TriggerCandidateMaker.hpp.
|
inline |
Definition at line 32 of file TriggerCandidateMaker.hpp.
|
inlinevirtual |
Post-processing/filtering of the TCs, e.g. prescale.
Takes a vector of TCs and removes ones that we want to filter out, e.g. based on prescaling.
output_tc[out] | output trigger candidate vector |
Definition at line 78 of file TriggerCandidateMaker.hpp.
|
inlinevirtual |
TA pre-processing/filtering.
: Implement ta-filtering, e.g. by plane or sub-detector
: 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 63 of file TriggerCandidateMaker.hpp.
|
pure virtual |
TA processing function that creates & fills TCs.
input_ta[in] | Input TA for the triggering algorithm |
output_tc[out] | Output vector of TCs to fill by the algorithm |
Implemented in triggeralgs::TCMakerADCSimpleWindowAlgorithm, triggeralgs::TCMakerBundleNAlgorithm, triggeralgs::TCMakerChannelAdjacencyAlgorithm, triggeralgs::TCMakerChannelDistanceAlgorithm, triggeralgs::TCMakerDBSCANAlgorithm, triggeralgs::TCMakerHorizontalMuonAlgorithm, triggeralgs::TCMakerMichelElectronAlgorithm, triggeralgs::TCMakerPlaneCoincidenceAlgorithm, triggeralgs::TCMakerPrescaleAlgorithm, and triggeralgs::TCMakerSupernovaAlgorithm.
std::atomic<uint64_t> triggeralgs::TriggerCandidateMaker::m_data_vs_system_time = 0 |
Definition at line 129 of file TriggerCandidateMaker.hpp.
std::atomic<uint64_t> triggeralgs::TriggerCandidateMaker::m_initial_offset = 0 |
Definition at line 130 of file TriggerCandidateMaker.hpp.
uint64_t triggeralgs::TriggerCandidateMaker::m_prescale = 1 |
Configurable prescale factor.
Definition at line 133 of file TriggerCandidateMaker.hpp.
uint64_t triggeralgs::TriggerCandidateMaker::m_tc_count = 0 |
TC made count for prescaling.
Definition at line 135 of file TriggerCandidateMaker.hpp.
TriggerCandidate::Type triggeralgs::TriggerCandidateMaker::m_tc_type_out = TriggerCandidate::Type::kUnknown |
Configurable TC type output.
Definition at line 138 of file TriggerCandidateMaker.hpp.