DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
flxlibs
src
DefaultParserImpl.cpp
Go to the documentation of this file.
1
9
// From Module
10
#include "
DefaultParserImpl.hpp
"
11
12
// From STD
13
#include <chrono>
14
#include <iomanip>
15
16
using namespace
std::chrono_literals;
17
18
namespace
dunedaq
{
19
namespace
flxlibs
{
20
21
DefaultParserImpl::DefaultParserImpl
()
22
{
23
process_chunk_func
= std::bind(&
DefaultParserImpl::process_chunk
,
this
, std::placeholders::_1);
24
process_shortchunk_func
= std::bind(&
DefaultParserImpl::process_shortchunk
,
this
, std::placeholders::_1);
25
process_subchunk_func
= std::bind(&
DefaultParserImpl::process_subchunk
,
this
, std::placeholders::_1);
26
process_block_func
= std::bind(&
DefaultParserImpl::process_block
,
this
, std::placeholders::_1);
27
process_chunk_with_error_func
= std::bind(&
DefaultParserImpl::process_chunk_with_error
,
this
, std::placeholders::_1);
28
process_shortchunk_with_error_func
=
29
std::bind(&
DefaultParserImpl::process_shortchunk_with_error
,
this
, std::placeholders::_1);
30
process_subchunk_with_error_func
=
31
std::bind(&
DefaultParserImpl::process_subchunk_with_error
,
this
, std::placeholders::_1);
32
process_block_with_error_func
= std::bind(&
DefaultParserImpl::process_block_with_error
,
this
, std::placeholders::_1);
33
}
34
35
DefaultParserImpl::~DefaultParserImpl
() {}
36
37
stats::ParserStats
&
38
DefaultParserImpl::get_stats
()
39
{
40
return
std::ref(
m_stats
);
41
}
42
43
void
44
DefaultParserImpl::chunk_processed
(
const
felix::packetformat::chunk&
chunk
)
45
{
46
process_chunk_func
(
chunk
);
47
m_stats
.chunk_ctr++;
48
}
49
50
void
51
DefaultParserImpl::shortchunk_processed
(
const
felix::packetformat::shortchunk& shortchunk)
52
{
53
process_shortchunk_func
(shortchunk);
54
m_stats
.short_ctr++;
55
}
56
57
void
58
DefaultParserImpl::subchunk_processed
(
const
felix::packetformat::subchunk& subchunk)
59
{
60
process_subchunk_func
(subchunk);
61
m_stats
.subchunk_ctr++;
62
}
63
64
void
65
DefaultParserImpl::block_processed
(
const
felix::packetformat::block& block)
66
{
67
process_block_func
(block);
68
m_stats
.block_ctr++;
69
}
70
71
void
72
DefaultParserImpl::chunk_processed_with_error
(
const
felix::packetformat::chunk&
chunk
)
73
{
74
process_chunk_with_error_func
(
chunk
);
75
m_stats
.error_chunk_ctr++;
76
}
77
78
void
79
DefaultParserImpl::subchunk_processed_with_error
(
const
felix::packetformat::subchunk& subchunk)
80
{
81
process_subchunk_with_error_func
(subchunk);
82
if
(subchunk.crcerr_flag) {
// NOLINT(runtime/output_format)
83
m_stats
.subchunk_crc_error_ctr++;
84
}
85
if
(subchunk.trunc_flag) {
86
m_stats
.subchunk_trunc_error_ctr++;
87
}
88
if
(subchunk.err_flag) {
89
m_stats
.subchunk_error_ctr++;
90
}
91
m_stats
.error_subchunk_ctr++;
92
}
93
94
void
95
DefaultParserImpl::shortchunk_process_with_error
(
const
felix::packetformat::shortchunk& shortchunk)
96
{
97
process_shortchunk_with_error_func
(shortchunk);
98
m_stats
.error_short_ctr++;
99
}
100
101
void
102
DefaultParserImpl::block_processed_with_error
(
const
felix::packetformat::block& block)
103
{
104
process_block_with_error_func
(block);
105
m_stats
.error_block_ctr++;
106
}
107
108
}
// namespace flxlibs
109
}
// namespace dunedaq
DefaultParserImpl.hpp
dunedaq::flxlibs::DefaultParserImpl::shortchunk_processed
void shortchunk_processed(const felix::packetformat::shortchunk &shortchunk)
Definition
DefaultParserImpl.cpp:51
dunedaq::flxlibs::DefaultParserImpl::process_block_func
std::function< void(const felix::packetformat::block &block)> process_block_func
Definition
DefaultParserImpl.hpp:41
dunedaq::flxlibs::DefaultParserImpl::process_chunk_with_error_func
std::function< void(const felix::packetformat::chunk &chunk)> process_chunk_with_error_func
Definition
DefaultParserImpl.hpp:42
dunedaq::flxlibs::DefaultParserImpl::process_chunk
void process_chunk(const felix::packetformat::chunk &)
Definition
DefaultParserImpl.hpp:59
dunedaq::flxlibs::DefaultParserImpl::process_block
void process_block(const felix::packetformat::block &)
Definition
DefaultParserImpl.hpp:62
dunedaq::flxlibs::DefaultParserImpl::process_chunk_func
std::function< void(const felix::packetformat::chunk &chunk)> process_chunk_func
Definition
DefaultParserImpl.hpp:38
dunedaq::flxlibs::DefaultParserImpl::process_subchunk_with_error_func
std::function< void(const felix::packetformat::subchunk &subchunk)> process_subchunk_with_error_func
Definition
DefaultParserImpl.hpp:43
dunedaq::flxlibs::DefaultParserImpl::block_processed_with_error
void block_processed_with_error(const felix::packetformat::block &block)
Definition
DefaultParserImpl.cpp:102
dunedaq::flxlibs::DefaultParserImpl::subchunk_processed
void subchunk_processed(const felix::packetformat::subchunk &subchunk)
Definition
DefaultParserImpl.cpp:58
dunedaq::flxlibs::DefaultParserImpl::process_shortchunk_func
std::function< void(const felix::packetformat::shortchunk &shortchunk)> process_shortchunk_func
Definition
DefaultParserImpl.hpp:39
dunedaq::flxlibs::DefaultParserImpl::process_subchunk_with_error
void process_subchunk_with_error(const felix::packetformat::subchunk &)
Definition
DefaultParserImpl.hpp:64
dunedaq::flxlibs::DefaultParserImpl::shortchunk_process_with_error
void shortchunk_process_with_error(const felix::packetformat::shortchunk &shortchunk)
Definition
DefaultParserImpl.cpp:95
dunedaq::flxlibs::DefaultParserImpl::~DefaultParserImpl
~DefaultParserImpl()
Definition
DefaultParserImpl.cpp:35
dunedaq::flxlibs::DefaultParserImpl::chunk_processed
void chunk_processed(const felix::packetformat::chunk &chunk)
Definition
DefaultParserImpl.cpp:44
dunedaq::flxlibs::DefaultParserImpl::DefaultParserImpl
DefaultParserImpl()
Definition
DefaultParserImpl.cpp:21
dunedaq::flxlibs::DefaultParserImpl::process_shortchunk
void process_shortchunk(const felix::packetformat::shortchunk &)
Definition
DefaultParserImpl.hpp:60
dunedaq::flxlibs::DefaultParserImpl::process_subchunk
void process_subchunk(const felix::packetformat::subchunk &)
Definition
DefaultParserImpl.hpp:61
dunedaq::flxlibs::DefaultParserImpl::process_block_with_error
void process_block_with_error(const felix::packetformat::block &)
Definition
DefaultParserImpl.hpp:66
dunedaq::flxlibs::DefaultParserImpl::process_subchunk_func
std::function< void(const felix::packetformat::subchunk &subchunk)> process_subchunk_func
Definition
DefaultParserImpl.hpp:40
dunedaq::flxlibs::DefaultParserImpl::get_stats
stats::ParserStats & get_stats()
Definition
DefaultParserImpl.cpp:38
dunedaq::flxlibs::DefaultParserImpl::m_stats
stats::ParserStats m_stats
Definition
DefaultParserImpl.hpp:69
dunedaq::flxlibs::DefaultParserImpl::chunk_processed_with_error
void chunk_processed_with_error(const felix::packetformat::chunk &chunk)
Definition
DefaultParserImpl.cpp:72
dunedaq::flxlibs::DefaultParserImpl::process_shortchunk_with_error
void process_shortchunk_with_error(const felix::packetformat::shortchunk &)
Definition
DefaultParserImpl.hpp:65
dunedaq::flxlibs::DefaultParserImpl::block_processed
void block_processed(const felix::packetformat::block &block)
Definition
DefaultParserImpl.cpp:65
dunedaq::flxlibs::DefaultParserImpl::process_shortchunk_with_error_func
std::function< void(const felix::packetformat::shortchunk &shortchunk)> process_shortchunk_with_error_func
Definition
DefaultParserImpl.hpp:44
dunedaq::flxlibs::DefaultParserImpl::process_chunk_with_error
void process_chunk_with_error(const felix::packetformat::chunk &)
Definition
DefaultParserImpl.hpp:63
dunedaq::flxlibs::DefaultParserImpl::subchunk_processed_with_error
void subchunk_processed_with_error(const felix::packetformat::subchunk &subchunk)
Definition
DefaultParserImpl.cpp:79
dunedaq::flxlibs::DefaultParserImpl::process_block_with_error_func
std::function< void(const felix::packetformat::block &block)> process_block_with_error_func
Definition
DefaultParserImpl.hpp:45
dunedaq::flxlibs
Definition
AvailableParserOperations.hpp:27
dunedaq
Including Qt Headers.
Definition
module.cpp:16
dunedaq::chunk
FELIX Initialization std::string initerror FELIX queue timed std::string queuename Unexpected chunk int ParserOps couldn t push to queue !Failed chunk
Definition
FelixIssues.hpp:33
dunedaq::flxlibs::stats::ParserStats
Definition
FelixStatistics.hpp:18
Generated on
for DUNE-DAQ by
1.17.0