DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
asiolibs
src
SourceConcept.hpp
Go to the documentation of this file.
1
12
#ifndef ASIOLIBS_SRC_SOURCECONCEPT_HPP_
13
#define ASIOLIBS_SRC_SOURCECONCEPT_HPP_
14
15
//#include "DefaultParserImpl.hpp"
16
17
#include "
opmonlib/MonitorableObject.hpp
"
18
#include "
appfwk/DAQModule.hpp
"
19
#include "
appmodel/DataMoveCallbackConf.hpp
"
20
//#include "packetformat/detail/block_parser.hpp"
21
#include <nlohmann/json.hpp>
22
23
#include <memory>
24
#include <sstream>
25
#include <string>
26
27
namespace
dunedaq::asiolibs
{
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) = 0;
48
virtual
std::size_t
get_expected_frame_size
()
const
= 0;
49
50
void
set_sink_config
(
const
appmodel::DataMoveCallbackConf
* sink_conf)
51
{
52
m_sink_conf
= sink_conf;
53
}
54
55
// Sink or destination related
56
const
appmodel::DataMoveCallbackConf
*
m_sink_conf
;
57
};
58
59
}
// namespace dunedaq::asiolibs
60
61
#endif
// ASIOLIBS_SRC_SOURCECONCEPT_HPP_
DAQModule.hpp
MonitorableObject.hpp
dunedaq::appmodel::DataMoveCallbackConf
Definition
DataMoveCallbackConf.hpp:20
dunedaq::asiolibs::SourceConcept::operator=
SourceConcept & operator=(SourceConcept &&)=delete
SourceConcept is not move-assignable.
dunedaq::asiolibs::SourceConcept::SourceConcept
SourceConcept(SourceConcept &&)=delete
SourceConcept is not move-constructible.
dunedaq::asiolibs::SourceConcept::acquire_callback
virtual void acquire_callback()=0
dunedaq::asiolibs::SourceConcept::~SourceConcept
virtual ~SourceConcept()
Definition
SourceConcept.hpp:33
dunedaq::asiolibs::SourceConcept::SourceConcept
SourceConcept()
Definition
SourceConcept.hpp:32
dunedaq::asiolibs::SourceConcept::operator=
SourceConcept & operator=(const SourceConcept &)=delete
SourceConcept is not copy-assginable.
dunedaq::asiolibs::SourceConcept::m_sink_conf
const appmodel::DataMoveCallbackConf * m_sink_conf
Definition
SourceConcept.hpp:56
dunedaq::asiolibs::SourceConcept::handle_daq_frame
virtual void handle_daq_frame(char *buffer)=0
dunedaq::asiolibs::SourceConcept::set_sink_config
void set_sink_config(const appmodel::DataMoveCallbackConf *sink_conf)
Definition
SourceConcept.hpp:50
dunedaq::asiolibs::SourceConcept::SourceConcept
SourceConcept(const SourceConcept &)=delete
SourceConcept is not copy-constructible.
dunedaq::asiolibs::SourceConcept::get_expected_frame_size
virtual std::size_t get_expected_frame_size() const =0
dunedaq::opmonlib::MonitorableObject
Definition
MonitorableObject.hpp:74
DataMoveCallbackConf.hpp
dunedaq::asiolibs
Definition
CreateGenericReceiver.hpp:25
Generated on
for DUNE-DAQ by
1.17.0