DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
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
17#include "appfwk/DAQModule.hpp"
18//#include "packetformat/detail/block_parser.hpp"
19#include <nlohmann/json.hpp>
20
21#include <memory>
22#include <sstream>
23#include <string>
24
25namespace dunedaq {
26 namespace dpdklibs {
27
29 {
30 public:
32 virtual ~SourceConcept() {}
33
34 SourceConcept(const SourceConcept&) = delete;
38
39 // virtual void init(const nlohmann::json& args) = 0;
40 virtual void set_sink(const std::string& sink_name, bool callback_mode) = 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_name(const std::string& sink_name)
50 {
51 m_sink_name = sink_name;
52 }
53
54 // Disables DAQEth protocol on this source
58
59 // Sink or destination related
60 std::string m_sink_name;
61
62 // Features
64
65 };
66
67 } // namespace dpdklibs
68} // namespace dunedaq
69
70#endif // DPDKLIBS_SRC_SOURCECONCEPT_HPP_
void set_sink_name(const std::string &sink_name)
virtual void set_sink(const std::string &sink_name, bool callback_mode)=0
SourceConcept(const SourceConcept &)=delete
SourceConcept is not copy-constructible.
SourceConcept & operator=(SourceConcept &&)=delete
SourceConcept is not move-assignable.
SourceConcept(SourceConcept &&)=delete
SourceConcept is not move-constructible.
virtual void handle_daq_frame(char *buffer, std::size_t size)=0
SourceConcept & operator=(const SourceConcept &)=delete
SourceConcept is not copy-assginable.
The DUNE-DAQ namespace.
FELIX Initialization std::string initerror FELIX queue timed std::string queuename Unexpected chunk size