DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
fdreadoutlibs
include
fdreadoutlibs
daphne
DAPHNEStreamFrameProcessor.hpp
Go to the documentation of this file.
1
9
#ifndef FDREADOUTLIBS_INCLUDE_FDREADOUTLIBS_DAPHNE_DAPHNESTREAMFRAMEPROCESSOR_HPP_
10
#define FDREADOUTLIBS_INCLUDE_FDREADOUTLIBS_DAPHNE_DAPHNESTREAMFRAMEPROCESSOR_HPP_
11
12
#include "
logging/Logging.hpp
"
13
14
#include "
datahandlinglibs/FrameErrorRegistry.hpp
"
15
#include "
datahandlinglibs/DataHandlingIssues.hpp
"
16
#include "
datahandlinglibs/ReadoutLogging.hpp
"
17
#include "
datahandlinglibs/models/TaskRawDataProcessorModel.hpp
"
18
19
#include "
fddetdataformats/DAPHNEStreamFrame.hpp
"
20
#include "
fdreadoutlibs/DAPHNEStreamSuperChunkTypeAdapter.hpp
"
21
22
#include <atomic>
23
#include <functional>
24
#include <memory>
25
#include <string>
26
27
using
dunedaq::datahandlinglibs::logging::TLVL_BOOKKEEPING
;
28
29
namespace
dunedaq
{
30
namespace
fdreadoutlibs
{
31
32
class
DAPHNEStreamFrameProcessor
:
public
datahandlinglibs::TaskRawDataProcessorModel
<types::DAPHNEStreamSuperChunkTypeAdapter>
33
{
34
35
public
:
36
using
inherited
=
datahandlinglibs::TaskRawDataProcessorModel<types::DAPHNEStreamSuperChunkTypeAdapter>
;
37
using
frameptr
=
types::DAPHNEStreamSuperChunkTypeAdapter
*;
38
using
daphneframeptr
=
dunedaq::fddetdataformats::DAPHNEStreamFrame
*;
39
using
timestamp_t
= std::uint64_t;
// NOLINT(build/unsigned)
40
41
explicit
DAPHNEStreamFrameProcessor
(std::unique_ptr<datahandlinglibs::FrameErrorRegistry>& error_registry,
bool
post_processing_enabled)
42
:
datahandlinglibs
::
TaskRawDataProcessorModel
<
types
::DAPHNEStreamSuperChunkTypeAdapter>(error_registry, post_processing_enabled)
43
{}
44
45
// Override config for pipeline setup
46
void
conf
(
const
appmodel::DataHandlerModule
*
conf
)
override
;
47
48
protected
:
52
void
timestamp_check
(
frameptr
/*fp*/
);
53
57
void
frame_error_check
(
frameptr
/*fp*/
);
58
59
// Internals
60
timestamp_t
m_previous_ts
= 0;
61
timestamp_t
m_current_ts
= 0;
62
bool
m_first_ts_fake
=
true
;
63
bool
m_first_ts_missmatch
=
true
;
64
bool
m_problem_reported
=
false
;
65
std::atomic<int>
m_ts_error_ctr
{ 0 };
66
67
};
68
69
}
// namespace fdreadoutlibs
70
}
// namespace dunedaq
71
72
#endif
// FDREADOUTLIBS_INCLUDE_FDREADOUTLIBS_DAPHNE_DAPHNESTREAMFRAMEPROCESSOR_HPP_
DAPHNEStreamFrame.hpp
DAPHNEStreamSuperChunkTypeAdapter.hpp
DataHandlingIssues.hpp
FrameErrorRegistry.hpp
ReadoutLogging.hpp
TaskRawDataProcessorModel.hpp
dunedaq::appmodel::DataHandlerModule
Definition
DataHandlerModule.hpp:36
dunedaq::datahandlinglibs::TaskRawDataProcessorModel
Definition
TaskRawDataProcessorModel.hpp:47
dunedaq::datahandlinglibs::TaskRawDataProcessorModel< types::DAPHNEStreamSuperChunkTypeAdapter >::TaskRawDataProcessorModel
TaskRawDataProcessorModel(std::unique_ptr< FrameErrorRegistry > &error_registry, bool post_processing_enabled)
Definition
TaskRawDataProcessorModel.hpp:50
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::m_previous_ts
timestamp_t m_previous_ts
Definition
DAPHNEStreamFrameProcessor.hpp:60
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::DAPHNEStreamFrameProcessor
DAPHNEStreamFrameProcessor(std::unique_ptr< datahandlinglibs::FrameErrorRegistry > &error_registry, bool post_processing_enabled)
Definition
DAPHNEStreamFrameProcessor.hpp:41
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::m_problem_reported
bool m_problem_reported
Definition
DAPHNEStreamFrameProcessor.hpp:64
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::m_ts_error_ctr
std::atomic< int > m_ts_error_ctr
Definition
DAPHNEStreamFrameProcessor.hpp:65
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::m_first_ts_fake
bool m_first_ts_fake
Definition
DAPHNEStreamFrameProcessor.hpp:62
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::daphneframeptr
dunedaq::fddetdataformats::DAPHNEStreamFrame * daphneframeptr
Definition
DAPHNEStreamFrameProcessor.hpp:38
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::m_current_ts
timestamp_t m_current_ts
Definition
DAPHNEStreamFrameProcessor.hpp:61
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::frame_error_check
void frame_error_check(frameptr)
Definition
DAPHNEStreamFrameProcessor.cpp:78
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::frameptr
types::DAPHNEStreamSuperChunkTypeAdapter * frameptr
Definition
DAPHNEStreamFrameProcessor.hpp:37
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::conf
void conf(const appmodel::DataHandlerModule *conf) override
Set the emulator mode, if active, timestamps of processed packets are overwritten with new ones.
Definition
DAPHNEStreamFrameProcessor.cpp:24
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::timestamp_check
void timestamp_check(frameptr)
Definition
DAPHNEStreamFrameProcessor.cpp:36
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::timestamp_t
std::uint64_t timestamp_t
Definition
DAPHNEStreamFrameProcessor.hpp:39
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::inherited
datahandlinglibs::TaskRawDataProcessorModel< types::DAPHNEStreamSuperChunkTypeAdapter > inherited
Definition
DAPHNEStreamFrameProcessor.hpp:36
dunedaq::fdreadoutlibs::DAPHNEStreamFrameProcessor::m_first_ts_missmatch
bool m_first_ts_missmatch
Definition
DAPHNEStreamFrameProcessor.hpp:63
Logging.hpp
dunedaq::datahandlinglibs::logging::TLVL_BOOKKEEPING
@ TLVL_BOOKKEEPING
Definition
ReadoutLogging.hpp:26
dunedaq::datahandlinglibs
Definition
DataHandlingConcept.hpp:16
dunedaq::fdreadoutlibs::types
Definition
CRTBernTypeAdapter.hpp:16
dunedaq::fdreadoutlibs
Definition
CRTBernFrameProcessor.hpp:16
dunedaq
Including Qt Headers.
Definition
module.cpp:16
dunedaq::fddetdataformats::DAPHNEStreamFrame
Definition
DAPHNEStreamFrame.hpp:35
dunedaq::fdreadoutlibs::types::DAPHNEStreamSuperChunkTypeAdapter
Definition
DAPHNEStreamSuperChunkTypeAdapter.hpp:20
Generated on
for DUNE-DAQ by
1.17.0