DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
trigger
src
trigger
TAProcessor.hpp
Go to the documentation of this file.
1
8
#ifndef TRIGGER_SRC_TRIGGER_TAPROCESSOR_HPP_
9
#define TRIGGER_SRC_TRIGGER_TAPROCESSOR_HPP_
10
11
#include "
iomanager/IOManager.hpp
"
12
#include "
iomanager/Sender.hpp
"
13
#include "
logging/Logging.hpp
"
14
15
#include "
appmodel/DataHandlerModule.hpp
"
16
17
#include "
datahandlinglibs/models/TaskRawDataProcessorModel.hpp
"
18
19
#include "
trigger/Issues.hpp
"
20
#include "
trigger/TAWrapper.hpp
"
21
#include "
trigger/Latency.hpp
"
22
#include "
trigger/opmon/taprocessor_info.pb.h
"
23
#include "
trigger/opmon/latency_info.pb.h
"
24
25
#include "
triggeralgs/TriggerCandidate.hpp
"
26
#include "
triggeralgs/Types.hpp
"
27
#include "
triggeralgs/TriggerCandidateMaker.hpp
"
28
29
namespace
dunedaq
{
30
namespace
trigger
{
31
32
class
TAProcessor
:
public
datahandlinglibs::TaskRawDataProcessorModel
<TAWrapper>
33
{
34
35
public
:
36
using
inherited
=
datahandlinglibs::TaskRawDataProcessorModel<TAWrapper>
;
37
using
taptr
=
TAWrapper
*;
38
using
consttaptr
=
const
TAWrapper
*;
39
40
41
explicit
TAProcessor
(std::unique_ptr<datahandlinglibs::FrameErrorRegistry>& error_registry,
bool
post_processing_enabled);
42
43
~TAProcessor
();
44
45
void
start
(
const
appfwk::DAQModule::CommandData_t& args)
override
;
46
47
void
stop
(
const
appfwk::DAQModule::CommandData_t& args)
override
;
48
49
void
conf
(
const
appmodel::DataHandlerModule
*
conf
)
override
;
50
51
void
scrap
(
const
appfwk::DAQModule::CommandData_t& args)
override
;
52
53
void
generate_opmon_data
()
override
;
54
55
protected
:
56
// Internals
57
dunedaq::daqdataformats::timestamp_t
m_previous_ts
= 0;
58
dunedaq::daqdataformats::timestamp_t
m_current_ts
= 0;
59
63
64
void
find_tc
(
const
TAWrapper
* ta, std::shared_ptr<triggeralgs::TriggerCandidateMaker> tcm);
65
66
private
:
67
68
std::vector<std::shared_ptr<triggeralgs::TriggerCandidateMaker>>
m_tcms
;
69
70
std::shared_ptr<iomanager::SenderConcept<triggeralgs::TriggerCandidate>>
m_tc_sink
;
71
72
daqdataformats::SourceID
m_sourceid
;
73
74
using
metric_counter_type
= uint64_t;
75
std::atomic<metric_counter_type>
m_ta_received_count
{ 0 };
// NOLINT(build/unsigned)
76
std::atomic<metric_counter_type>
m_tc_made_count
{ 0 };
77
std::atomic<metric_counter_type>
m_tc_sent_count
{ 0 };
78
std::atomic<metric_counter_type>
m_tc_failed_sent_count
{ 0 };
79
void
print_opmon_stats
();
80
81
// Create an instance of the Latency class
82
std::atomic<bool>
m_running_flag
{
false
};
83
std::atomic<bool>
m_latency_monitoring
{
false
};
84
dunedaq::trigger::Latency
m_latency_instance
;
85
std::atomic<metric_counter_type>
m_latency_in
{ 0 };
86
std::atomic<metric_counter_type>
m_latency_out
{ 0 };
87
88
};
89
90
}
// namespace trigger
91
}
// namespace dunedaq
92
93
#endif
// TRIGGER_SRC_TRIGGER_TPPROCESSOR_HPP_
IOManager.hpp
Latency.hpp
TAWrapper.hpp
TaskRawDataProcessorModel.hpp
TriggerCandidateMaker.hpp
TriggerCandidate.hpp
dunedaq::appmodel::DataHandlerModule
Definition
DataHandlerModule.hpp:36
dunedaq::datahandlinglibs::TaskRawDataProcessorModel
Definition
TaskRawDataProcessorModel.hpp:47
dunedaq::trigger::Latency
Definition
Latency.hpp:20
dunedaq::trigger::TAProcessor::print_opmon_stats
void print_opmon_stats()
Definition
TAProcessor.cpp:173
dunedaq::trigger::TAProcessor::m_ta_received_count
std::atomic< metric_counter_type > m_ta_received_count
Definition
TAProcessor.hpp:75
dunedaq::trigger::TAProcessor::scrap
void scrap(const appfwk::DAQModule::CommandData_t &args) override
Unconfigure.
Definition
TAProcessor.cpp:116
dunedaq::trigger::TAProcessor::m_previous_ts
dunedaq::daqdataformats::timestamp_t m_previous_ts
Definition
TAProcessor.hpp:57
dunedaq::trigger::TAProcessor::m_running_flag
std::atomic< bool > m_running_flag
Definition
TAProcessor.hpp:82
dunedaq::trigger::TAProcessor::generate_opmon_data
void generate_opmon_data() override
Definition
TAProcessor.cpp:126
dunedaq::trigger::TAProcessor::m_latency_instance
dunedaq::trigger::Latency m_latency_instance
Definition
TAProcessor.hpp:84
dunedaq::trigger::TAProcessor::m_tc_failed_sent_count
std::atomic< metric_counter_type > m_tc_failed_sent_count
Definition
TAProcessor.hpp:78
dunedaq::trigger::TAProcessor::m_current_ts
dunedaq::daqdataformats::timestamp_t m_current_ts
Definition
TAProcessor.hpp:58
dunedaq::trigger::TAProcessor::find_tc
void find_tc(const TAWrapper *ta, std::shared_ptr< triggeralgs::TriggerCandidateMaker > tcm)
Definition
TAProcessor.cpp:151
dunedaq::trigger::TAProcessor::m_tcms
std::vector< std::shared_ptr< triggeralgs::TriggerCandidateMaker > > m_tcms
Definition
TAProcessor.hpp:68
dunedaq::trigger::TAProcessor::~TAProcessor
~TAProcessor()
Definition
TAProcessor.cpp:44
dunedaq::trigger::TAProcessor::m_latency_out
std::atomic< metric_counter_type > m_latency_out
Definition
TAProcessor.hpp:86
dunedaq::trigger::TAProcessor::stop
void stop(const appfwk::DAQModule::CommandData_t &args) override
Stop operation.
Definition
TAProcessor.cpp:66
dunedaq::trigger::TAProcessor::m_sourceid
daqdataformats::SourceID m_sourceid
Definition
TAProcessor.hpp:72
dunedaq::trigger::TAProcessor::TAProcessor
TAProcessor(std::unique_ptr< datahandlinglibs::FrameErrorRegistry > &error_registry, bool post_processing_enabled)
Definition
TAProcessor.cpp:39
dunedaq::trigger::TAProcessor::consttaptr
const TAWrapper * consttaptr
Definition
TAProcessor.hpp:38
dunedaq::trigger::TAProcessor::m_tc_made_count
std::atomic< metric_counter_type > m_tc_made_count
Definition
TAProcessor.hpp:76
dunedaq::trigger::TAProcessor::taptr
TAWrapper * taptr
Definition
TAProcessor.hpp:37
dunedaq::trigger::TAProcessor::m_tc_sent_count
std::atomic< metric_counter_type > m_tc_sent_count
Definition
TAProcessor.hpp:77
dunedaq::trigger::TAProcessor::start
void start(const appfwk::DAQModule::CommandData_t &args) override
Start operation.
Definition
TAProcessor.cpp:48
dunedaq::trigger::TAProcessor::m_latency_monitoring
std::atomic< bool > m_latency_monitoring
Definition
TAProcessor.hpp:83
dunedaq::trigger::TAProcessor::m_tc_sink
std::shared_ptr< iomanager::SenderConcept< triggeralgs::TriggerCandidate > > m_tc_sink
Definition
TAProcessor.hpp:70
dunedaq::trigger::TAProcessor::m_latency_in
std::atomic< metric_counter_type > m_latency_in
Definition
TAProcessor.hpp:85
dunedaq::trigger::TAProcessor::metric_counter_type
uint64_t metric_counter_type
Definition
TAProcessor.hpp:74
dunedaq::trigger::TAProcessor::conf
void conf(const appmodel::DataHandlerModule *conf) override
Set the emulator mode, if active, timestamps of processed packets are overwritten with new ones.
Definition
TAProcessor.cpp:78
dunedaq::trigger::TAProcessor::inherited
datahandlinglibs::TaskRawDataProcessorModel< TAWrapper > inherited
Definition
TAProcessor.hpp:36
DataHandlerModule.hpp
Sender.hpp
latency_info.pb.h
Logging.hpp
dunedaq::daqdataformats::timestamp_t
uint64_t timestamp_t
Type used to represent DUNE timing system timestamps.
Definition
Types.hpp:26
dunedaq::trigger
Definition
AlgorithmPlugins.hpp:24
dunedaq
Including Qt Headers.
Definition
module.cpp:16
dunedaq::daqdataformats::SourceID
SourceID is a generalized representation of the source of a piece of data in the DAQ....
Definition
SourceID.hpp:32
dunedaq::trigger::TAWrapper
Definition
TAWrapper.hpp:21
taprocessor_info.pb.h
Issues.hpp
Types.hpp
Generated on
for DUNE-DAQ by
1.17.0