Revision 8740bc71
| b/host/include/uhd/device.hpp | ||
|---|---|---|
| 83 | 83 |
* If the buffer has more samples than the maximum supported, |
| 84 | 84 |
* the send method will send the maximum number of samples |
| 85 | 85 |
* as supported by the transport and return the number sent. |
| 86 |
* In this case, the end of burst flag will be forced to false. |
|
| 86 | 87 |
* It is up to the caller to call send again on the un-sent |
| 87 | 88 |
* portions of the buffer, until the buffer is exhausted. |
| 88 | 89 |
* |
| b/host/lib/usrp/usrp2/io_impl.cpp | ||
|---|---|---|
| 171 | 171 |
**********************************************************************/ |
| 172 | 172 |
size_t usrp2_impl::send( |
| 173 | 173 |
const asio::const_buffer &buff, |
| 174 |
const tx_metadata_t &metadata, |
|
| 174 |
const tx_metadata_t &metadata_,
|
|
| 175 | 175 |
const io_type_t &io_type |
| 176 | 176 |
){
|
| 177 |
tx_metadata_t metadata = metadata_; //rw copy to change later |
|
| 178 |
|
|
| 177 | 179 |
boost::uint32_t tx_mem[_mtu/sizeof(boost::uint32_t)]; |
| 178 | 180 |
size_t num_samps = std::min( |
| 179 | 181 |
asio::buffer_size(buff)/io_type.size, |
| 180 | 182 |
size_t(_max_tx_samples_per_packet) |
| 181 | 183 |
); |
| 182 | 184 |
|
| 185 |
//kill the end of burst flag if this is a fragment |
|
| 186 |
if (asio::buffer_size(buff)/io_type.size < num_samps) |
|
| 187 |
metadata.end_of_burst = false; |
|
| 188 |
|
|
| 183 | 189 |
size_t num_header_words32, num_packet_words32; |
| 184 | 190 |
size_t packet_count = _tx_stream_id_to_packet_seq[metadata.stream_id]++; |
| 185 | 191 |
|
Also available in: Unified diff