artdaq_mfextensions  v1_05_00
UDP_receiver.hh
1 #ifndef MFVIEWER_RECEIVERS_UDP_RECEIVER_HH
2 #define MFVIEWER_RECEIVERS_UDP_RECEIVER_HH
3 
4 #include "mfextensions/Receivers/MVReceiver.hh"
5 
6 #include "messagefacility/MessageLogger/MessageLogger.h"
7 
8 namespace mfviewer {
12 class UDPReceiver : public MVReceiver
13 {
14  Q_OBJECT
15 public:
20  explicit UDPReceiver(fhicl::ParameterSet const& pset);
21 
25  virtual ~UDPReceiver();
26 
30  void run() override;
31 
37  msg_ptr_t read_msg(std::string const& input);
38 
44  static bool validate_packet(std::string const& input);
45 
46 private:
47  UDPReceiver(UDPReceiver const&) = delete;
48  UDPReceiver(UDPReceiver&&) = delete;
49  UDPReceiver& operator=(UDPReceiver const&) = delete;
50  UDPReceiver& operator=(UDPReceiver&&) = delete;
51 
52  void setupMessageListener_();
53 
54  int message_port_;
55  std::string message_addr_;
56  bool multicast_enable_;
57  std::string multicast_out_addr_;
58  int message_socket_;
59 
60  std::list<std::string> tokenize_(std::string const& input);
61 };
62 } // namespace mfviewer
63 
64 #endif
void run() override
Receiver method. Receive messages and emit NewMessage signal
Definition: UDP_receiver.cc:80
Receive messages through a UDP socket. Expects the syslog format provided by UDP_mfPlugin (ELUDP) ...
Definition: UDP_receiver.hh:12
UDPReceiver(fhicl::ParameterSet const &pset)
UDPReceiver Constructor
Definition: UDP_receiver.cc:10
static bool validate_packet(std::string const &input)
Run simple validation tests on message
msg_ptr_t read_msg(std::string const &input)
Parse incoming message
virtual ~UDPReceiver()
Destructor – Close socket
Definition: UDP_receiver.cc:73
A MVReceiver class listens for messages and raises a signal when one arrives
Definition: MVReceiver.hh:17