diff options
author | Josh Blum <josh@joshknows.com> | 2010-08-04 16:33:49 -0700 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2010-08-04 16:33:49 -0700 |
commit | 8e1d51d628afb18dc9a36f268dda1e9f48a1c2ad (patch) | |
tree | 9aea9b125848fa7fc3ea45c96bff27dde2c1e8fb /host/lib/usrp/usrp2/io_impl.cpp | |
parent | 702d5af8ca0bab8ef295c817017df5952f6aea51 (diff) | |
parent | 70abdef8f6c6d24a99caf8d3668f32094b159903 (diff) | |
download | uhd-8e1d51d628afb18dc9a36f268dda1e9f48a1c2ad.tar.gz uhd-8e1d51d628afb18dc9a36f268dda1e9f48a1c2ad.tar.bz2 uhd-8e1d51d628afb18dc9a36f268dda1e9f48a1c2ad.zip |
Merge branch 'master' into codec_gains
Conflicts:
host/lib/CMakeLists.txt
host/lib/utils/gain_handler.cpp
Diffstat (limited to 'host/lib/usrp/usrp2/io_impl.cpp')
-rw-r--r-- | host/lib/usrp/usrp2/io_impl.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/host/lib/usrp/usrp2/io_impl.cpp b/host/lib/usrp/usrp2/io_impl.cpp index aa6d15783..9e29edd82 100644 --- a/host/lib/usrp/usrp2/io_impl.cpp +++ b/host/lib/usrp/usrp2/io_impl.cpp @@ -144,11 +144,13 @@ void usrp2_impl::io_impl::recv_pirate_loop( **********************************************************************/ void usrp2_impl::io_init(void){ //send a small data packet so the usrp2 knows the udp source port - for(size_t i = 0; i < _data_transports.size(); i++){ - managed_send_buffer::sptr send_buff = _data_transports[i]->get_send_buff(); - boost::uint32_t data = htonl(USRP2_INVALID_VRT_HEADER); - memcpy(send_buff->cast<void*>(), &data, sizeof(data)); + BOOST_FOREACH(zero_copy_if::sptr data_transport, _data_transports){ + managed_send_buffer::sptr send_buff = data_transport->get_send_buff(); + static const boost::uint32_t data = htonl(USRP2_INVALID_VRT_HEADER); + std::memcpy(send_buff->cast<void*>(), &data, sizeof(data)); send_buff->commit(sizeof(data)); + //drain the recv buffers (may have junk) + while (data_transport->get_recv_buff().get()); } //the number of recv frames is the number for the first transport |