DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
dunedaq
sourcecode
triggeralgs
src
TAMakerPrescaleAlgorithm.cpp
Go to the documentation of this file.
1
9
#include "
triggeralgs/Prescale/TAMakerPrescaleAlgorithm.hpp
"
10
11
#include "TRACE/trace.h"
12
#define TRACE_NAME "TAMakerPrescaleAlgorithm"
13
14
#include <vector>
15
16
using namespace
triggeralgs
;
17
18
using
Logging::TLVL_DEBUG_MEDIUM;
19
using
Logging::TLVL_IMPORTANT;
20
21
void
22
TAMakerPrescaleAlgorithm::process
(
const
TriggerPrimitive
& input_tp, std::vector<TriggerActivity>& output_ta)
23
{
24
std::vector<TriggerPrimitive> tp_list;
25
tp_list.push_back(input_tp);
26
27
TriggerActivity
ta;
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
;
38
ta.
type
=
TriggerActivity::Type::kTPC
;
39
ta.
algorithm
=
TriggerActivity::Algorithm::kPrescale
;
40
41
ta.
inputs
= tp_list;
42
43
output_ta.push_back(ta);
44
}
45
46
void
47
TAMakerPrescaleAlgorithm::configure
(
const
nlohmann::json& config)
48
{
49
TriggerActivityMaker::configure
(config);
50
}
51
52
// Register algo in TA Factory
53
REGISTER_TRIGGER_ACTIVITY_MAKER
(
TRACE_NAME
,
TAMakerPrescaleAlgorithm
)
REGISTER_TRIGGER_ACTIVITY_MAKER
#define REGISTER_TRIGGER_ACTIVITY_MAKER(tam_name, tam_class)
Definition
TriggerActivityFactory.hpp:14
triggeralgs::TAMakerPrescaleAlgorithm
Definition
TAMakerPrescaleAlgorithm.hpp:18
triggeralgs::TAMakerPrescaleAlgorithm::process
void process(const TriggerPrimitive &input_tp, std::vector< TriggerActivity > &output_ta)
TP processing function that creates & fills TAs.
Definition
TAMakerPrescaleAlgorithm.cpp:22
triggeralgs::TAMakerPrescaleAlgorithm::configure
void configure(const nlohmann::json &config)
Definition
TAMakerPrescaleAlgorithm.cpp:47
triggeralgs::TriggerActivityMaker::configure
virtual void configure(const nlohmann::json &config)
Definition
TriggerActivityMaker.hpp:111
triggeralgs
Definition
AbstractFactory.hpp:18
TRACE_NAME
#define TRACE_NAME
Definition
TimingHardwareManagerBase.cpp:30
TAMakerPrescaleAlgorithm.hpp
dunedaq::trgdataformats::TriggerActivityData::algorithm
Algorithm algorithm
Definition
TriggerActivityData.hpp:56
dunedaq::trgdataformats::TriggerActivityData::channel_peak
channel_t channel_peak
Definition
TriggerActivityData.hpp:51
dunedaq::trgdataformats::TriggerActivityData::time_activity
timestamp_t time_activity
Definition
TriggerActivityData.hpp:48
dunedaq::trgdataformats::TriggerActivityData::adc_integral
uint64_t adc_integral
Definition
TriggerActivityData.hpp:52
dunedaq::trgdataformats::TriggerActivityData::Type::kTPC
@ kTPC
dunedaq::trgdataformats::TriggerActivityData::type
Type type
Definition
TriggerActivityData.hpp:55
dunedaq::trgdataformats::TriggerActivityData::time_peak
timestamp_t time_peak
Definition
TriggerActivityData.hpp:47
dunedaq::trgdataformats::TriggerActivityData::Algorithm::kPrescale
@ kPrescale
dunedaq::trgdataformats::TriggerActivityData::adc_peak
uint16_t adc_peak
Definition
TriggerActivityData.hpp:53
dunedaq::trgdataformats::TriggerActivityData::channel_end
channel_t channel_end
Definition
TriggerActivityData.hpp:50
dunedaq::trgdataformats::TriggerActivityData::time_end
timestamp_t time_end
Definition
TriggerActivityData.hpp:46
dunedaq::trgdataformats::TriggerActivityData::channel_start
channel_t channel_start
Definition
TriggerActivityData.hpp:49
dunedaq::trgdataformats::TriggerActivityData::time_start
timestamp_t time_start
Definition
TriggerActivityData.hpp:45
dunedaq::trgdataformats::TriggerActivityData::detid
detid_t detid
Definition
TriggerActivityData.hpp:54
dunedaq::trgdataformats::TriggerPrimitive
A single energy deposition on a TPC or PDS channel.
Definition
TriggerPrimitive.hpp:27
dunedaq::trgdataformats::TriggerPrimitive::detid
uint64_t detid
Definition
TriggerPrimitive.hpp:33
dunedaq::trgdataformats::TriggerPrimitive::channel
uint64_t channel
Definition
TriggerPrimitive.hpp:36
dunedaq::trgdataformats::TriggerPrimitive::samples_over_threshold
uint64_t samples_over_threshold
Definition
TriggerPrimitive.hpp:38
dunedaq::trgdataformats::TriggerPrimitive::adc_peak
uint64_t adc_peak
Definition
TriggerPrimitive.hpp:43
dunedaq::trgdataformats::TriggerPrimitive::time_start
uint64_t time_start
Definition
TriggerPrimitive.hpp:39
dunedaq::trgdataformats::TriggerPrimitive::samples_to_peak
uint64_t samples_to_peak
Definition
TriggerPrimitive.hpp:40
dunedaq::trgdataformats::TriggerPrimitive::adc_integral
uint64_t adc_integral
Definition
TriggerPrimitive.hpp:42
triggeralgs::TriggerActivity
Definition
TriggerActivity.hpp:20
triggeralgs::TriggerActivity::inputs
std::vector< TriggerPrimitive > inputs
Definition
TriggerActivity.hpp:21
Generated on Sat Jun 28 2025 for DUNE-DAQ by
1.12.0