ip_listener.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "ros_publisher.h"
4 #include <boost/array.hpp>
5 #include <boost/asio.hpp>
6 #include <boost/noncopyable.hpp>
7 #include <boost/system/error_code.hpp>
8 #include <inttypes.h>
10 #include <string>
11 #include <thread>
12 
22 class IPListener : private boost::noncopyable
23 {
24  IPListener() = delete;
25 
26 public:
27  IPListener(const std::string& ip, uint16_t port);
28  virtual ~IPListener();
29 
30  void onNewDataReceived(const boost::system::error_code& error,
31  std::size_t bytes_transfered);
32 
33 protected:
38  virtual void listenNextData(void) = 0;
39  const std::string ip;
40  const uint16_t port;
41 
43 
44  boost::array<uint8_t, 8192> datas;
45  boost::asio::io_service service;
46  std::thread asioThread;
48 };
boost::asio::io_service service
Definition: ip_listener.h:45
void onNewDataReceived(const boost::system::error_code &error, std::size_t bytes_transfered)
Definition: ip_listener.cpp:14
virtual void listenNextData(void)=0
std::thread asioThread
Definition: ip_listener.h:46
Contains the common part of TCP and UDP Receiver. This class manage the io_service thread...
Definition: ip_listener.h:22
boost::array< uint8_t, 8192 > datas
Definition: ip_listener.h:44
ixblue_stdbin_decoder::StdBinDecoder parser
Definition: ip_listener.h:42
ROSPublisher rosPublisher
Definition: ip_listener.h:47
const std::string ip
Definition: ip_listener.h:39
const uint16_t port
Definition: ip_listener.h:40
virtual ~IPListener()
Definition: ip_listener.cpp:8
IPListener()=delete


ixblue_ins_driver
Author(s): Adrien BARRAL , Laure LE BRETON
autogenerated on Wed Jan 27 2021 03:37:01