DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
dpdklibs
src
SourceConcept.hpp
Go to the documentation of this file.
1
11
#ifndef DPDKLIBS_SRC_SOURCECONCEPT_HPP_
12
#define DPDKLIBS_SRC_SOURCECONCEPT_HPP_
13
14
//#include "DefaultParserImpl.hpp"
15
16
#include "
opmonlib/MonitorableObject.hpp
"
17
#include "
appfwk/DAQModule.hpp
"
18
#include "
appmodel/DataMoveCallbackConf.hpp
"
19
//#include "packetformat/detail/block_parser.hpp"
20
#include <nlohmann/json.hpp>
21
22
#include <memory>
23
#include <sstream>
24
#include <string>
25
26
namespace
dunedaq
{
27
namespace
dpdklibs
{
28
29
class
SourceConcept
:
public
opmonlib::MonitorableObject
30
{
31
public
:
32
SourceConcept
() {}
33
virtual
~SourceConcept
() {}
34
35
SourceConcept
(
const
SourceConcept
&) =
delete
;
36
SourceConcept
&
operator=
(
const
SourceConcept
&) =
delete
;
37
SourceConcept
(
SourceConcept
&&) =
delete
;
38
SourceConcept
&
operator=
(
SourceConcept
&&) =
delete
;
39
40
// virtual void init(const nlohmann::json& args) = 0;
41
virtual
void
acquire_callback
() = 0;
42
// virtual void conf(const nlohmann::json& args) = 0;
43
// virtual void start(const nlohmann::json& args) = 0;
44
// virtual void stop(const nlohmann::json& args) = 0;
45
46
// Meant to process an incoming raw byte buffer and extract complete frames of arbitrary types in specialized models.
47
virtual
void
handle_daq_frame
(
char
* buffer, std::size_t
size
) = 0;
48
49
void
set_sink_config
(
const
appmodel::DataMoveCallbackConf
* sink_conf)
50
{
51
m_sink_conf
= sink_conf;
52
}
53
54
// Disables DAQEth protocol on this source
55
void
disable_daq_protocol_checks
() {
56
m_daq_protocol_ensured
=
false
;
57
}
58
59
// Sink or destination related
60
const
appmodel::DataMoveCallbackConf
*
m_sink_conf
;
61
62
// Features
63
bool
m_daq_protocol_ensured
{
true
};
64
65
};
66
67
}
// namespace dpdklibs
68
}
// namespace dunedaq
69
70
#endif
// DPDKLIBS_SRC_SOURCECONCEPT_HPP_
DAQModule.hpp
MonitorableObject.hpp
dunedaq::appmodel::DataMoveCallbackConf
Definition
DataMoveCallbackConf.hpp:20
dunedaq::dpdklibs::SourceConcept::acquire_callback
virtual void acquire_callback()=0
dunedaq::dpdklibs::SourceConcept::disable_daq_protocol_checks
void disable_daq_protocol_checks()
Definition
SourceConcept.hpp:55
dunedaq::dpdklibs::SourceConcept::set_sink_config
void set_sink_config(const appmodel::DataMoveCallbackConf *sink_conf)
Definition
SourceConcept.hpp:49
dunedaq::dpdklibs::SourceConcept::SourceConcept
SourceConcept(const SourceConcept &)=delete
SourceConcept is not copy-constructible.
dunedaq::dpdklibs::SourceConcept::m_daq_protocol_ensured
bool m_daq_protocol_ensured
Definition
SourceConcept.hpp:63
dunedaq::dpdklibs::SourceConcept::operator=
SourceConcept & operator=(SourceConcept &&)=delete
SourceConcept is not move-assignable.
dunedaq::dpdklibs::SourceConcept::SourceConcept
SourceConcept(SourceConcept &&)=delete
SourceConcept is not move-constructible.
dunedaq::dpdklibs::SourceConcept::SourceConcept
SourceConcept()
Definition
SourceConcept.hpp:32
dunedaq::dpdklibs::SourceConcept::m_sink_conf
const appmodel::DataMoveCallbackConf * m_sink_conf
Definition
SourceConcept.hpp:60
dunedaq::dpdklibs::SourceConcept::handle_daq_frame
virtual void handle_daq_frame(char *buffer, std::size_t size)=0
dunedaq::dpdklibs::SourceConcept::operator=
SourceConcept & operator=(const SourceConcept &)=delete
SourceConcept is not copy-assginable.
dunedaq::dpdklibs::SourceConcept::~SourceConcept
virtual ~SourceConcept()
Definition
SourceConcept.hpp:33
dunedaq::opmonlib::MonitorableObject
Definition
MonitorableObject.hpp:74
DataMoveCallbackConf.hpp
dunedaq::dpdklibs
Definition
ARP.hpp:16
dunedaq
Including Qt Headers.
Definition
module.cpp:16
dunedaq::size
FELIX Initialization std::string initerror FELIX queue timed std::string queuename Unexpected chunk size
Definition
FelixIssues.hpp:28
Generated on
for DUNE-DAQ by
1.17.0