DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
triggeralgs
include
triggeralgs
ADCSimpleWindow
TAMakerADCSimpleWindowAlgorithm.hpp
Go to the documentation of this file.
1
8
9
#ifndef TRIGGERALGS_ADCSIMPLEWINDOW_TRIGGERACTIVITYMAKERADCSIMPLEWINDOW_HPP_
10
#define TRIGGERALGS_ADCSIMPLEWINDOW_TRIGGERACTIVITYMAKERADCSIMPLEWINDOW_HPP_
11
12
#include "
triggeralgs/TriggerActivityFactory.hpp
"
13
#include "
triggeralgs/Types.hpp
"
14
15
#include <deque>
16
17
namespace
triggeralgs
{
18
class
TAMakerADCSimpleWindowAlgorithm
:
public
TriggerActivityMaker
19
{
20
21
public
:
22
void
process
(
const
TriggerPrimitive
& input_tp, std::vector<TriggerActivity>& output_ta);
23
24
void
configure
(
const
nlohmann::json &config);
25
26
class
Window
{
27
public
:
28
friend
std::ostream&
operator<<
(std::ostream& os,
const
Window
& window);
29
30
bool
is_empty
()
const
{
31
return
tp_list
.empty();
32
};
33
34
void
add
(
TriggerPrimitive
const
&input_tp);
35
36
void
clear
(){
37
tp_list
.clear();
38
};
39
40
void
move
(
TriggerPrimitive
const
&input_tp,
timestamp_t
const
&window_length);
41
42
void
reset
(
TriggerPrimitive
const
&input_tp);
43
44
timestamp_t
time_start
;
45
uint32_t
adc_integral
;
46
std::deque<TriggerPrimitive>
tp_list
;
47
};
48
49
private
:
50
51
TriggerActivity
construct_ta
()
const
;
52
53
Window
m_current_window
;
54
uint64_t
m_primitive_count
= 0;
55
56
// Configurable parameters.
57
uint32_t
m_adc_threshold
= 1200000;
58
timestamp_t
m_window_length
= 100000;
59
60
// FIXME: should this be centrally defined?
61
// FIXME 2: assumes the same conversion for all TPC types, which is not the case (TPCE/BDE = 32, TDE=32.5)
62
const
uint16_t
k_sample_to_dts_ticks
= 32;
63
};
64
65
66
}
// namespace triggeralgs
67
68
#endif
// TRIGGERALGS_ADCSIMPLEWINDOW_TRIGGERACTIVITYMAKERADCSIMPLEWINDOW_HPP_
TriggerActivityFactory.hpp
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:26
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::tp_list
std::deque< TriggerPrimitive > tp_list
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:46
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::reset
void reset(TriggerPrimitive const &input_tp)
Definition
TAMakerADCSimpleWindowAlgorithm.cpp:65
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::move
void move(TriggerPrimitive const &input_tp, timestamp_t const &window_length)
Definition
TAMakerADCSimpleWindowAlgorithm.cpp:36
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::clear
void clear()
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:36
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::operator<<
friend std::ostream & operator<<(std::ostream &os, const Window &window)
Definition
TAMakerADCSimpleWindowAlgorithm.cpp:80
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::is_empty
bool is_empty() const
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:30
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::add
void add(TriggerPrimitive const &input_tp)
Definition
TAMakerADCSimpleWindowAlgorithm.cpp:28
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::adc_integral
uint32_t adc_integral
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:45
triggeralgs::TAMakerADCSimpleWindowAlgorithm::Window::time_start
timestamp_t time_start
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:44
triggeralgs::TAMakerADCSimpleWindowAlgorithm
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:19
triggeralgs::TAMakerADCSimpleWindowAlgorithm::m_primitive_count
uint64_t m_primitive_count
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:54
triggeralgs::TAMakerADCSimpleWindowAlgorithm::construct_ta
TriggerActivity construct_ta() const
Definition
TAMakerADCSimpleWindowAlgorithm.cpp:153
triggeralgs::TAMakerADCSimpleWindowAlgorithm::process
void process(const TriggerPrimitive &input_tp, std::vector< TriggerActivity > &output_ta)
TP processing function that creates & fills TAs.
Definition
TAMakerADCSimpleWindowAlgorithm.cpp:95
triggeralgs::TAMakerADCSimpleWindowAlgorithm::m_window_length
timestamp_t m_window_length
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:58
triggeralgs::TAMakerADCSimpleWindowAlgorithm::m_adc_threshold
uint32_t m_adc_threshold
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:57
triggeralgs::TAMakerADCSimpleWindowAlgorithm::k_sample_to_dts_ticks
const uint16_t k_sample_to_dts_ticks
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:62
triggeralgs::TAMakerADCSimpleWindowAlgorithm::configure
void configure(const nlohmann::json &config)
Definition
TAMakerADCSimpleWindowAlgorithm.cpp:136
triggeralgs::TAMakerADCSimpleWindowAlgorithm::m_current_window
Window m_current_window
Definition
TAMakerADCSimpleWindowAlgorithm.hpp:53
triggeralgs::TriggerActivityMaker
Definition
TriggerActivityMaker.hpp:29
triggeralgs
Definition
AbstractFactory.hpp:18
triggeralgs::timestamp_t
dunedaq::trgdataformats::timestamp_t timestamp_t
Definition
Types.hpp:16
triggeralgs::TriggerPrimitive
dunedaq::trgdataformats::TriggerPrimitive TriggerPrimitive
Definition
TriggerPrimitive.hpp:22
triggeralgs::TriggerActivity
Definition
TriggerActivity.hpp:20
Types.hpp
Generated on
for DUNE-DAQ by
1.17.0