11 #ifndef INCLUDED_NETWORK_UDP_SINK_IMPL_H
12 #define INCLUDED_NETWORK_UDP_SINK_IMPL_H
15 #include <boost/asio.hpp>
16 #include <boost/asio/ip/udp.hpp>
17 #include <boost/circular_buffer.hpp>
42 char d_tmpheaderbuff[12];
49 boost::system::error_code
ec;
63 const std::string& host,
66 int payloadsize = 1472,
67 bool send_eof =
true);
72 int work(
int noutput_items,
Definition: udp_sink_impl.h:25
char * d_localbuffer
Definition: udp_sink_impl.h:47
int d_header_type
Definition: udp_sink_impl.h:33
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) override
just like gr::block::general_work, only this arranges to call consume_each for you
int d_precomp_data_overitemsize
Definition: udp_sink_impl.h:40
bool b_send_eof
Definition: udp_sink_impl.h:37
size_t d_block_size
Definition: udp_sink_impl.h:30
boost::mutex d_mutex
Definition: udp_sink_impl.h:55
boost::asio::ip::udp::endpoint d_endpoint
Definition: udp_sink_impl.h:52
bool is_ipv6
Definition: udp_sink_impl.h:32
int d_precomp_datasize
Definition: udp_sink_impl.h:39
size_t d_itemsize
Definition: udp_sink_impl.h:28
udp_sink_impl(size_t itemsize, size_t veclen, const std::string &host, int port, int header_type=HEADERTYPE_NONE, int payloadsize=1472, bool send_eof=true)
bool stop() override
Called to disable drivers, etc for i/o devices.
~udp_sink_impl() override
boost::circular_buffer< char > * d_localqueue
Definition: udp_sink_impl.h:46
int d_header_size
Definition: udp_sink_impl.h:34
uint16_t d_payloadsize
Definition: udp_sink_impl.h:36
boost::system::error_code ec
Definition: udp_sink_impl.h:49
int d_port
Definition: udp_sink_impl.h:27
virtual void build_header()
boost::asio::io_service d_io_service
Definition: udp_sink_impl.h:51
boost::asio::ip::udp::socket * d_udpsocket
Definition: udp_sink_impl.h:53
size_t d_veclen
Definition: udp_sink_impl.h:29
uint64_t d_seq_num
Definition: udp_sink_impl.h:35
This block provides a UDP Sink block that can send data over UDP streams to a specified host.
Definition: gr-network/include/gnuradio/network/udp_sink.h:50
#define NETWORK_API
Definition: gr-network/include/gnuradio/network/api.h:19
BLOCKS_API size_t itemsize(vector_type type)
boost::mutex mutex
Definition: thread.h:37
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition: basic_block.h:29
std::vector< const void * > gr_vector_const_void_star
Definition: types.h:28
std::vector< void * > gr_vector_void_star
Definition: types.h:27