DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
triggeralgs
include
triggeralgs
PlaneCoincidence
TCMakerPlaneCoincidenceAlgorithm.hpp
Go to the documentation of this file.
1
8
9
#ifndef TRIGGERALGS_PLANECOINCIDENCE_TRIGGERCANDIDATEMAKERPLANECOINCIDENCE_HPP_
10
#define TRIGGERALGS_PLANECOINCIDENCE_TRIGGERCANDIDATEMAKERPLANECOINCIDENCE_HPP_
11
12
#include "
triggeralgs/TriggerCandidateFactory.hpp
"
13
#include "
triggeralgs/TAWindow.hpp
"
14
#include <fstream>
15
#include <vector>
16
17
namespace
triggeralgs
{
18
class
TCMakerPlaneCoincidenceAlgorithm
:
public
TriggerCandidateMaker
19
{
20
21
public
:
22
// The function that gets called when there is a new activity
23
void
process
(
const
TriggerActivity
&, std::vector<TriggerCandidate>&);
24
void
configure
(
const
nlohmann::json& config);
25
26
private
:
27
28
TriggerCandidate
construct_tc
()
const
;
29
bool
check_adjacency
()
const
;
30
31
TAWindow
m_current_window
;
32
uint64_t
m_activity_count
= 0;
// NOLINT(build/unsigned)
33
34
// Configurable parameters.
35
bool
m_trigger_on_adc
=
false
;
36
bool
m_trigger_on_n_channels
=
false
;
37
uint32_t
m_adc_threshold
= 1200000;
38
uint16_t
m_n_channels_threshold
= 600;
// 80ish for frames, O(200 - 600) for tpslink
39
timestamp_t
m_window_length
= 80000;
40
int
tc_number
= 0;
41
42
// For debugging and performance study purposes.
43
void
add_window_to_record
(
TAWindow
window);
44
void
dump_window_record
();
45
std::vector<TAWindow>
m_window_record
;
46
};
47
}
// namespace triggeralgs
48
#endif
// TRIGGERALGS_PLANECOINCIDENCE_TRIGGERCANDIDATEMAKERPLANECOINCIDENCE_HPP_
TAWindow.hpp
TriggerCandidateFactory.hpp
triggeralgs::TAWindow
Definition
TAWindow.hpp:20
triggeralgs::TCMakerPlaneCoincidenceAlgorithm
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:19
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::m_current_window
TAWindow m_current_window
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:31
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::dump_window_record
void dump_window_record()
Definition
TCMakerPlaneCoincidenceAlgorithm.cpp:162
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::m_window_record
std::vector< TAWindow > m_window_record
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:45
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::construct_tc
TriggerCandidate construct_tc() const
Definition
TCMakerPlaneCoincidenceAlgorithm.cpp:124
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::m_activity_count
uint64_t m_activity_count
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:32
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::m_adc_threshold
uint32_t m_adc_threshold
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:37
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::m_window_length
timestamp_t m_window_length
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:39
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::configure
void configure(const nlohmann::json &config)
Definition
TCMakerPlaneCoincidenceAlgorithm.cpp:97
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::check_adjacency
bool check_adjacency() const
Definition
TCMakerPlaneCoincidenceAlgorithm.cpp:147
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::add_window_to_record
void add_window_to_record(TAWindow window)
Definition
TCMakerPlaneCoincidenceAlgorithm.cpp:155
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::m_trigger_on_n_channels
bool m_trigger_on_n_channels
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:36
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::tc_number
int tc_number
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:40
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::process
void process(const TriggerActivity &, std::vector< TriggerCandidate > &)
TA processing function that creates & fills TCs.
Definition
TCMakerPlaneCoincidenceAlgorithm.cpp:25
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::m_n_channels_threshold
uint16_t m_n_channels_threshold
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:38
triggeralgs::TCMakerPlaneCoincidenceAlgorithm::m_trigger_on_adc
bool m_trigger_on_adc
Definition
TCMakerPlaneCoincidenceAlgorithm.hpp:35
triggeralgs::TriggerCandidateMaker
Definition
TriggerCandidateMaker.hpp:29
triggeralgs
Definition
AbstractFactory.hpp:18
triggeralgs::timestamp_t
dunedaq::trgdataformats::timestamp_t timestamp_t
Definition
Types.hpp:16
triggeralgs::TriggerActivity
Definition
TriggerActivity.hpp:20
triggeralgs::TriggerCandidate
Definition
TriggerCandidate.hpp:20
Generated on
for DUNE-DAQ by
1.17.0