DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
EmptyFragmentRequestHandlerModel.hpp
Go to the documentation of this file.
1
9#ifndef DATAHANDLINGLIBS_INCLUDE_DATAHANDLINGLIBS_MODELS_EMPTYFRAGMENTREQUESTHANDLERMODEL_HPP_
10#define DATAHANDLINGLIBS_INCLUDE_DATAHANDLINGLIBS_MODELS_EMPTYFRAGMENTREQUESTHANDLERMODEL_HPP_
11
13
14#include <memory>
15#include <utility>
16#include <vector>
17
21
22namespace dunedaq {
23namespace datahandlinglibs {
24
25template<class ReadoutType, class LatencyBufferType>
26class EmptyFragmentRequestHandlerModel : public DefaultRequestHandlerModel<ReadoutType, LatencyBufferType>
27{
28public:
29 // Using inherited typenames
33 using ResultCode =
35
36 // Explicit constructor to bind LB and error registry
37 explicit EmptyFragmentRequestHandlerModel(std::shared_ptr<LatencyBufferType>& latency_buffer,
38 std::unique_ptr<FrameErrorRegistry>& error_registry)
39 : DefaultRequestHandlerModel<ReadoutType, LatencyBufferType>(latency_buffer, error_registry)
40 {
41 TLOG_DEBUG(TLVL_WORK_STEPS) << "EmptyFragmentRequestHandlerModel created...";
42 }
43
44 // Override the issue_request implementation of the DefaultRequestHandlerModel
45 // in order to always respond with empty fragments.
46 void issue_request(dfmessages::DataRequest datarequest, bool is_retry = false) override;
47};
48
49} // namespace datahandlinglibs
50} // namespace dunedaq
51
52// Declarations
54
55#endif // DATAHANDLINGLIBS_INCLUDE_DATAHANDLINGLIBS_MODELS_EMPTYFRAGMENTREQUESTHANDLERMODEL_HPP_
DefaultRequestHandlerModel(std::shared_ptr< LatencyBufferType > &latency_buffer, std::unique_ptr< FrameErrorRegistry > &error_registry)
DefaultRequestHandlerModel< ReadoutType, LatencyBufferType > inherited
EmptyFragmentRequestHandlerModel(std::shared_ptr< LatencyBufferType > &latency_buffer, std::unique_ptr< FrameErrorRegistry > &error_registry)
typename dunedaq::datahandlinglibs::RequestHandlerConcept< ReadoutType, LatencyBufferType >::ResultCode ResultCode
void issue_request(dfmessages::DataRequest datarequest, bool is_retry=false) override
Issue a data request to the request handler.
typename dunedaq::datahandlinglibs::RequestHandlerConcept< ReadoutType, LatencyBufferType >::RequestResult RequestResult
#define TLOG_DEBUG(lvl,...)
Definition Logging.hpp:116
The DUNE-DAQ namespace.
This message represents a request for data sent to a single component of the DAQ.