DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
triggeralgs::TAMakerPrescaleAlgorithm Class Reference

#include <TAMakerPrescaleAlgorithm.hpp>

Inheritance diagram for triggeralgs::TAMakerPrescaleAlgorithm:
[legend]
Collaboration diagram for triggeralgs::TAMakerPrescaleAlgorithm:
[legend]

Public Member Functions

void process (const TriggerPrimitive &input_tp, std::vector< TriggerActivity > &output_ta)
 TP processing function that creates & fills TAs.
 
void configure (const nlohmann::json &config)
 
- Public Member Functions inherited from triggeralgs::TriggerActivityMaker
virtual ~TriggerActivityMaker ()=default
 
void operator() (const TriggerPrimitive &input_tp, std::vector< TriggerActivity > &output_ta)
 
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 > &)
 

Additional Inherited Members

- Public Attributes inherited from triggeralgs::TriggerActivityMaker
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.
 

Detailed Description

Definition at line 17 of file TAMakerPrescaleAlgorithm.hpp.

Member Function Documentation

◆ configure()

void TAMakerPrescaleAlgorithm::configure ( const nlohmann::json & config)
virtual

Reimplemented from triggeralgs::TriggerActivityMaker.

Definition at line 47 of file TAMakerPrescaleAlgorithm.cpp.

48{
50}
virtual void configure(const nlohmann::json &config)

◆ process()

void TAMakerPrescaleAlgorithm::process ( const TriggerPrimitive & input_tp,
std::vector< TriggerActivity > & output_ta )
virtual

TP processing function that creates & fills TAs.

Parameters
input_tp[in]Input TP for the triggering algorithm
output_ta[out]Output vector of TAs to fill by the algorithm

Implements triggeralgs::TriggerActivityMaker.

Definition at line 22 of file TAMakerPrescaleAlgorithm.cpp.

23{
24 std::vector<TriggerPrimitive> tp_list;
25 tp_list.push_back(input_tp);
26
28 ta.time_start = input_tp.time_start;
29 ta.time_end = input_tp.time_start + input_tp.samples_over_threshold * 32; // FIXME: Replace the hard-coded SOT to TOT scaling.
30 ta.time_peak = input_tp.samples_to_peak * 32 + input_tp.time_start; // FIXME: Replace STP to `time_peak` conversion.
31 ta.time_activity = 0;
32 ta.channel_start = input_tp.channel;
33 ta.channel_end = input_tp.channel;
34 ta.channel_peak = input_tp.channel;
35 ta.adc_integral = input_tp.adc_integral;
36 ta.adc_peak = input_tp.adc_peak;
37 ta.detid = input_tp.detid;
40
41 ta.inputs = tp_list;
42
43 output_ta.push_back(ta);
44}
std::vector< TriggerPrimitive > inputs

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