USRP Hardware Driver and USRP Manual  Version: 3.15.0.HEAD-0-gaea0e2de
UHD and USRP Manual
udp_zero_copy.hpp
Go to the documentation of this file.
1 //
2 // Copyright 2010 Ettus Research LLC
3 // Copyright 2018 Ettus Research, a National Instruments Company
4 //
5 // SPDX-License-Identifier: GPL-3.0-or-later
6 //
7 
8 #ifndef INCLUDED_UHD_TRANSPORT_UDP_ZERO_COPY_HPP
9 #define INCLUDED_UHD_TRANSPORT_UDP_ZERO_COPY_HPP
10 
11 #include <uhd/config.hpp>
14 #include <boost/shared_ptr.hpp>
15 
16 namespace uhd { namespace transport {
17 
28 class UHD_API udp_zero_copy : public virtual zero_copy_if
29 {
30 public:
31  struct buff_params
32  {
35  };
36 
37  typedef boost::shared_ptr<udp_zero_copy> sptr;
38 
55  static sptr make(const std::string& addr,
56  const std::string& port,
57  const zero_copy_xport_params& default_buff_args,
58  udp_zero_copy::buff_params& buff_params_out,
59  const device_addr_t& hints = device_addr_t());
60 
67  virtual uint16_t get_local_port(void) const = 0;
68 
74  virtual std::string get_local_addr(void) const = 0;
75 };
76 
77 }} // namespace uhd::transport
78 
79 #endif /* INCLUDED_UHD_TRANSPORT_UDP_ZERO_COPY_HPP */
boost::shared_ptr< udp_zero_copy > sptr
Definition: udp_zero_copy.hpp:37
Definition: zero_copy.hpp:142
Definition: udp_zero_copy.hpp:31
Definition: build_info.hpp:13
size_t send_buff_size
Definition: udp_zero_copy.hpp:34
Definition: udp_zero_copy.hpp:28
#define UHD_API
Definition: config.h:68
size_t recv_buff_size
Definition: udp_zero_copy.hpp:33
Definition: zero_copy.hpp:166
Definition: device_addr.hpp:38