DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
trigger
src
trigger
TPRequestHandler.hpp
Go to the documentation of this file.
1
9
#ifndef TRIGGER_SRC_TRIGGER_TPREQUESTHANDLER_HPP_
10
#define TRIGGER_SRC_TRIGGER_TPREQUESTHANDLER_HPP_
11
12
#include "
iomanager/IOManager.hpp
"
13
#include "
iomanager/Sender.hpp
"
14
15
#include "
appmodel/DataHandlerModule.hpp
"
16
17
#include "
datahandlinglibs/DataHandlingIssues.hpp
"
18
#include "
datahandlinglibs/FrameErrorRegistry.hpp
"
19
#include "
datahandlinglibs/ReadoutLogging.hpp
"
20
#include "
datahandlinglibs/models/DefaultSkipListRequestHandler.hpp
"
21
22
#include "
trigger/TPSet.hpp
"
23
#include "
trigger/TriggerPrimitiveTypeAdapter.hpp
"
24
25
#include "
logging/Logging.hpp
"
// NOTE: if ISSUES ARE DECLARED BEFORE include logging/Logging.hpp, TLOG_DEBUG<<issue wont work.
26
27
#include <atomic>
28
#include <memory>
29
#include <string>
30
31
using
dunedaq::datahandlinglibs::logging::TLVL_WORK_STEPS
;
32
33
namespace
dunedaq
{
34
ERS_DECLARE_ISSUE
(
trigger
,
35
DroppedTPSet,
36
"Failed to send TPs from "
<< s_ts <<
" to "
<< e_ts,
37
((uint64_t)s_ts)((uint64_t)e_ts))
38
ERS_DECLARE_ISSUE
(
trigger
,
TPHandlerMsg
,
infomsg
, ((
std
::
string
)
infomsg
))
39
40
namespace
trigger
{
41
42
class
TPRequestHandler
:
public
dunedaq::datahandlinglibs::DefaultSkipListRequestHandler
<TriggerPrimitiveTypeAdapter>
43
{
44
public
:
45
using
inherited2
=
datahandlinglibs::DefaultSkipListRequestHandler<TriggerPrimitiveTypeAdapter>
;
46
47
// Constructor that binds LB and error registry
48
49
TPRequestHandler
(
50
std::shared_ptr<
datahandlinglibs::SkipListLatencyBufferModel<TriggerPrimitiveTypeAdapter>
>& latency_buffer,
51
std::unique_ptr<datahandlinglibs::FrameErrorRegistry>& error_registry)
52
:
datahandlinglibs
::
DefaultSkipListRequestHandler
<
TriggerPrimitiveTypeAdapter
>(latency_buffer, error_registry)
53
{
54
TLOG_DEBUG
(
TLVL_WORK_STEPS
) <<
"TPRequestHandler created..."
;
55
}
56
57
void
conf(
const
appmodel::DataHandlerModule
* conf)
override
;
58
void
start(
const
appfwk::DAQModule::CommandData_t& args)
override
;
59
void
scrap(
const
appfwk::DAQModule::CommandData_t& args)
override
;
60
void
periodic_data_transmission()
override
;
61
62
private
:
63
using
timestamp_t
= std::uint64_t;
64
std::shared_ptr<iomanager::SenderConcept<dunedaq::trigger::TPSet>>
m_tpset_sink
;
65
uint64_t
m_run_number
;
66
uint64_t
m_next_tpset_seqno
;
67
68
timestamp_t
m_oldest_ts
= 0;
69
timestamp_t
m_newest_ts
= 0;
70
timestamp_t
m_start_win_ts
= 0;
71
timestamp_t
m_end_win_ts
= 0;
72
bool
m_first_cycle
=
true
;
73
uint64_t
m_ts_set_sender_offset_ticks
= 6250000;
// 100 ms delay in transmission
74
};
75
76
}
// namespace trigger
77
}
// namespace dunedaq
78
79
#endif
// TRIGGER_SRC_TRIGGER_TPREQUESTHANDLER_HPP_
TLVL_WORK_STEPS
@ TLVL_WORK_STEPS
Definition
CardControllerWrapper.cpp:33
DataHandlingIssues.hpp
DefaultSkipListRequestHandler.hpp
FrameErrorRegistry.hpp
IOManager.hpp
ReadoutLogging.hpp
TPSet.hpp
TriggerPrimitiveTypeAdapter.hpp
dunedaq::appmodel::DataHandlerModule
Definition
DataHandlerModule.hpp:36
dunedaq::datahandlinglibs::DefaultSkipListRequestHandler
Definition
DefaultSkipListRequestHandler.hpp:32
dunedaq::datahandlinglibs::DefaultSkipListRequestHandler< TriggerPrimitiveTypeAdapter >::DefaultSkipListRequestHandler
DefaultSkipListRequestHandler(std::shared_ptr< datahandlinglibs::SkipListLatencyBufferModel< TriggerPrimitiveTypeAdapter > > &latency_buffer, std::unique_ptr< datahandlinglibs::FrameErrorRegistry > &error_registry)
Definition
DefaultSkipListRequestHandler.hpp:39
dunedaq::datahandlinglibs::SkipListLatencyBufferModel
Definition
SkipListLatencyBufferModel.hpp:29
dunedaq::trigger::TPRequestHandler::TPRequestHandler
TPRequestHandler(std::shared_ptr< datahandlinglibs::SkipListLatencyBufferModel< TriggerPrimitiveTypeAdapter > > &latency_buffer, std::unique_ptr< datahandlinglibs::FrameErrorRegistry > &error_registry)
Definition
TPRequestHandler.hpp:49
dunedaq::trigger::TPRequestHandler::m_run_number
uint64_t m_run_number
Definition
TPRequestHandler.hpp:65
dunedaq::trigger::TPRequestHandler::timestamp_t
std::uint64_t timestamp_t
Definition
TPRequestHandler.hpp:63
dunedaq::trigger::TPRequestHandler::m_oldest_ts
timestamp_t m_oldest_ts
Definition
TPRequestHandler.hpp:68
dunedaq::trigger::TPRequestHandler::m_first_cycle
bool m_first_cycle
Definition
TPRequestHandler.hpp:72
dunedaq::trigger::TPRequestHandler::m_tpset_sink
std::shared_ptr< iomanager::SenderConcept< dunedaq::trigger::TPSet > > m_tpset_sink
Definition
TPRequestHandler.hpp:64
dunedaq::trigger::TPRequestHandler::m_ts_set_sender_offset_ticks
uint64_t m_ts_set_sender_offset_ticks
Definition
TPRequestHandler.hpp:73
dunedaq::trigger::TPRequestHandler::m_end_win_ts
timestamp_t m_end_win_ts
Definition
TPRequestHandler.hpp:71
dunedaq::trigger::TPRequestHandler::m_newest_ts
timestamp_t m_newest_ts
Definition
TPRequestHandler.hpp:69
dunedaq::trigger::TPRequestHandler::m_next_tpset_seqno
uint64_t m_next_tpset_seqno
Definition
TPRequestHandler.hpp:66
dunedaq::trigger::TPRequestHandler::inherited2
datahandlinglibs::DefaultSkipListRequestHandler< TriggerPrimitiveTypeAdapter > inherited2
Definition
TPRequestHandler.hpp:45
dunedaq::trigger::TPRequestHandler::m_start_win_ts
timestamp_t m_start_win_ts
Definition
TPRequestHandler.hpp:70
DataHandlerModule.hpp
Sender.hpp
Logging.hpp
TLOG_DEBUG
#define TLOG_DEBUG(lvl,...)
Definition
Logging.hpp:116
dunedaq::datahandlinglibs::logging::TLVL_WORK_STEPS
@ TLVL_WORK_STEPS
Definition
ReadoutLogging.hpp:23
dunedaq::datahandlinglibs
Definition
DataHandlingConcept.hpp:16
dunedaq::trigger
Definition
AlgorithmPlugins.hpp:24
dunedaq
The DUNE-DAQ namespace.
Definition
cib_utilities.cpp:5
dunedaq::infomsg
infomsg
Definition
TPRequestHandler.hpp:38
dunedaq::ERS_DECLARE_ISSUE
ERS_DECLARE_ISSUE(cibmodules, CIBCommunicationError, " CIB Hardware Communication Error: "<< descriptor,((std::string) descriptor)) ERS_DECLARE_ISSUE(cibmodules
dunedaq::TPHandlerMsg
TPHandlerMsg
Definition
TPRequestHandler.hpp:38
std
Definition
SchemaUtils.hpp:118
dunedaq::trigger::TriggerPrimitiveTypeAdapter
Definition
TriggerPrimitiveTypeAdapter.hpp:20
Generated on
for DUNE-DAQ by
1.18.0