DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
ipm
include
ipm
Subscriber.hpp
Go to the documentation of this file.
1
25
26
#ifndef IPM_INCLUDE_IPM_SUBSCRIBER_HPP_
27
#define IPM_INCLUDE_IPM_SUBSCRIBER_HPP_
28
29
#include "
ipm/Receiver.hpp
"
30
31
#include "cetlib/BasicPluginFactory.h"
32
#include "cetlib/compiler_macros.h"
33
#include "
ers/Issue.hpp
"
34
35
#include <memory>
36
#include <string>
37
#include <vector>
38
39
namespace
dunedaq::ipm
{
40
41
class
Subscriber
:
public
Receiver
42
{
43
44
public
:
45
Subscriber
() =
default
;
46
47
virtual
void
subscribe
(std::string
const
& topic) = 0;
48
virtual
void
unsubscribe
(std::string
const
& topic) = 0;
49
50
Subscriber
(
const
Subscriber
&) =
delete
;
51
Subscriber
&
operator=
(
const
Subscriber
&) =
delete
;
52
53
Subscriber
(
Subscriber
&&) =
delete
;
54
Subscriber
&
operator=
(
Subscriber
&&) =
delete
;
55
};
56
57
inline
std::shared_ptr<Subscriber>
58
make_ipm_subscriber
(std::string
const
& plugin_name)
59
{
60
static
cet::BasicPluginFactory bpf(
"duneIPM"
,
"make"
);
61
auto
receiver_ptr = bpf.makePlugin<std::shared_ptr<Receiver>>(plugin_name);
62
return
std::dynamic_pointer_cast<Subscriber>(receiver_ptr);
63
}
64
65
}
// namespace dunedaq::ipm
66
67
#endif
// IPM_INCLUDE_IPM_SUBSCRIBER_HPP_
Issue.hpp
dunedaq::ipm::Receiver::Receiver
Receiver()=default
dunedaq::ipm::Subscriber::Subscriber
Subscriber()=default
dunedaq::ipm::Subscriber::operator=
Subscriber & operator=(const Subscriber &)=delete
dunedaq::ipm::Subscriber::subscribe
virtual void subscribe(std::string const &topic)=0
dunedaq::ipm::Subscriber::unsubscribe
virtual void unsubscribe(std::string const &topic)=0
dunedaq::ipm::Subscriber::Subscriber
Subscriber(const Subscriber &)=delete
dunedaq::ipm::Subscriber::Subscriber
Subscriber(Subscriber &&)=delete
dunedaq::ipm::Subscriber::operator=
Subscriber & operator=(Subscriber &&)=delete
Receiver.hpp
dunedaq::ipm
An ERS Error indicating that an exception was thrown from ZMQ while performing an operation.
Definition
PluginInfo.hpp:26
dunedaq::ipm::make_ipm_subscriber
std::shared_ptr< Subscriber > make_ipm_subscriber(std::string const &plugin_name)
Definition
Subscriber.hpp:58
Generated on
for DUNE-DAQ by
1.17.0