00001 #ifndef MFVIEWER_RECEIVERS_UDP_RECEIVER_HH 00002 #define MFVIEWER_RECEIVERS_UDP_RECEIVER_HH 00003 00004 #include "mfextensions/Receivers/MVReceiver.hh" 00005 00006 #include "messagefacility/MessageLogger/MessageLogger.h" 00007 00008 namespace mfviewer 00009 { 00013 class UDPReceiver : public MVReceiver 00014 { 00015 Q_OBJECT 00016 public: 00021 explicit UDPReceiver(fhicl::ParameterSet pset); 00022 00026 virtual ~UDPReceiver(); 00027 00031 void run() override; 00032 00038 qt_mf_msg read_msg(std::string input); 00039 00045 static bool validate_packet(std::string input); 00046 00047 private: 00048 void setupMessageListener_(); 00049 00050 int message_port_; 00051 std::string message_addr_; 00052 bool multicast_enable_; 00053 std::string multicast_out_addr_; 00054 int message_socket_; 00055 }; 00056 } 00057 00058 #endif