From 9e2d669de18b40a69b212175bf1e6f44ad7cc5bc Mon Sep 17 00:00:00 2001 From: Josh Blum Date: Mon, 24 Jan 2011 10:58:34 -0800 Subject: usrp1: changes that make benchmark rx work initialize the time to something in soft time control use std::max(0, lost) because the time is emulated, lost can be negative which means huge positive unsigned... --- host/examples/benchmark_rx_rate.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'host/examples/benchmark_rx_rate.cpp') diff --git a/host/examples/benchmark_rx_rate.cpp b/host/examples/benchmark_rx_rate.cpp index c49d8bff0..c993af970 100644 --- a/host/examples/benchmark_rx_rate.cpp +++ b/host/examples/benchmark_rx_rate.cpp @@ -89,7 +89,8 @@ static inline void test_device( got_first_packet = true; } - total_lost_samples += boost::math::iround(rx_rate_sps*(md.time_spec - next_expected_time_spec).get_real_secs()); + double approx_lost_samps = rx_rate_sps*(md.time_spec - next_expected_time_spec).get_real_secs(); + total_lost_samples += std::max(0, boost::math::iround(approx_lost_samps)); next_expected_time_spec = md.time_spec + uhd::time_spec_t(0, num_rx_samps, rx_rate_sps); } while((next_expected_time_spec - initial_time_spec) < uhd::time_spec_t(duration_secs)); -- cgit v1.2.3