diff options
author | Peter Horvath <ejcspii@gmail.com> | 2018-06-30 15:22:25 +0200 |
---|---|---|
committer | Marcus Müller <marcus.mueller@ettus.com> | 2018-07-08 08:41:04 +0200 |
commit | 0b752c07ef9a2597f1a8f6e910291eed3376e8aa (patch) | |
tree | d04860f69c2f6237f76748d0720c1842456a6472 | |
parent | 7247b50a23681475cdf88518b52fad3185321073 (diff) |
Unbreak boost 1.67. Constrain the delay in message_strobe to integer milliseconds.
-rw-r--r-- | gr-blocks/grc/blocks_message_strobe.block.yml | 2 | ||||
-rw-r--r-- | gr-blocks/include/gnuradio/blocks/message_strobe.h | 6 | ||||
-rw-r--r-- | gr-blocks/lib/message_strobe_impl.cc | 4 | ||||
-rw-r--r-- | gr-blocks/lib/message_strobe_impl.h | 8 | ||||
-rw-r--r-- | gr-blocks/lib/message_strobe_random_impl.cc | 10 | ||||
-rw-r--r-- | gr-blocks/lib/message_strobe_random_impl.h | 2 | ||||
-rw-r--r-- | gr-uhd/lib/usrp_block_impl.cc | 4 |
7 files changed, 18 insertions, 18 deletions
diff --git a/gr-blocks/grc/blocks_message_strobe.block.yml b/gr-blocks/grc/blocks_message_strobe.block.yml index 6adb2948ed..89264996b2 100644 --- a/gr-blocks/grc/blocks_message_strobe.block.yml +++ b/gr-blocks/grc/blocks_message_strobe.block.yml @@ -8,7 +8,7 @@ parameters: default: pmt.intern("TEST") - id: period label: Period (ms) - dtype: real + dtype: int default: '1000' inputs: diff --git a/gr-blocks/include/gnuradio/blocks/message_strobe.h b/gr-blocks/include/gnuradio/blocks/message_strobe.h index 57baff45dc..553a1c0f9e 100644 --- a/gr-blocks/include/gnuradio/blocks/message_strobe.h +++ b/gr-blocks/include/gnuradio/blocks/message_strobe.h @@ -51,7 +51,7 @@ namespace gr { * \param period_ms the time period in milliseconds in which to * send \p msg. */ - static sptr make(pmt::pmt_t msg, float period_ms); + static sptr make(pmt::pmt_t msg, long period_ms); /*! * Reset the message being sent. @@ -68,12 +68,12 @@ namespace gr { * Reset the sending interval. * \param period_ms the time period in milliseconds. */ - virtual void set_period(float period_ms) = 0; + virtual void set_period(long period_ms) = 0; /*! * Get the time interval of the strobe. */ - virtual float period() const = 0; + virtual long period() const = 0; }; } /* namespace blocks */ diff --git a/gr-blocks/lib/message_strobe_impl.cc b/gr-blocks/lib/message_strobe_impl.cc index 96b079a0ed..5304faf165 100644 --- a/gr-blocks/lib/message_strobe_impl.cc +++ b/gr-blocks/lib/message_strobe_impl.cc @@ -39,13 +39,13 @@ namespace gr { namespace blocks { message_strobe::sptr - message_strobe::make(pmt::pmt_t msg, float period_ms) + message_strobe::make(pmt::pmt_t msg, long period_ms) { return gnuradio::get_initial_sptr (new message_strobe_impl(msg, period_ms)); } - message_strobe_impl::message_strobe_impl(pmt::pmt_t msg, float period_ms) + message_strobe_impl::message_strobe_impl(pmt::pmt_t msg, long period_ms) : block("message_strobe", io_signature::make(0, 0, 0), io_signature::make(0, 0, 0)), diff --git a/gr-blocks/lib/message_strobe_impl.h b/gr-blocks/lib/message_strobe_impl.h index 3ce71af58f..06a3fd3374 100644 --- a/gr-blocks/lib/message_strobe_impl.h +++ b/gr-blocks/lib/message_strobe_impl.h @@ -33,19 +33,19 @@ namespace gr { private: boost::shared_ptr<gr::thread::thread> d_thread; bool d_finished; - float d_period_ms; + long d_period_ms; pmt::pmt_t d_msg; void run(); public: - message_strobe_impl(pmt::pmt_t msg, float period_ms); + message_strobe_impl(pmt::pmt_t msg, long period_ms); ~message_strobe_impl(); void set_msg(pmt::pmt_t msg) { d_msg = msg; } pmt::pmt_t msg() const { return d_msg; } - void set_period(float period_ms) { d_period_ms = period_ms; } - float period() const { return d_period_ms; } + void set_period(long period_ms) { d_period_ms = period_ms; } + long period() const { return d_period_ms; } // Overloading these to start and stop the internal thread that // periodically produces the message. diff --git a/gr-blocks/lib/message_strobe_random_impl.cc b/gr-blocks/lib/message_strobe_random_impl.cc index c62aad1c7a..a5c6693215 100644 --- a/gr-blocks/lib/message_strobe_random_impl.cc +++ b/gr-blocks/lib/message_strobe_random_impl.cc @@ -69,15 +69,15 @@ namespace gr { boost::bind(&message_strobe_random_impl::set_msg, this, _1)); } - float message_strobe_random_impl::next_delay(){ + long message_strobe_random_impl::next_delay(){ switch(d_dist){ case STROBE_POISSON: //return d_variate_poisson->operator()(); - return d_variate_poisson->operator()(); + return static_cast<long>(d_variate_poisson->operator()()); case STROBE_GAUSSIAN: - return d_variate_normal->operator()(); + return static_cast<long>(d_variate_normal->operator()()); case STROBE_UNIFORM: - return d_variate_uniform->operator()(); + return static_cast<long>(d_variate_uniform->operator()()); default: throw std::runtime_error("message_strobe_random_impl::d_distribution is very unhappy with you"); } @@ -108,7 +108,7 @@ namespace gr { void message_strobe_random_impl::run() { while(!d_finished) { - boost::this_thread::sleep(boost::posix_time::milliseconds(std::max(0.0f,next_delay()))); + boost::this_thread::sleep(boost::posix_time::milliseconds(std::max(0L, next_delay()))); if(d_finished) { return; } diff --git a/gr-blocks/lib/message_strobe_random_impl.h b/gr-blocks/lib/message_strobe_random_impl.h index 2dcaa7effa..786f3288f6 100644 --- a/gr-blocks/lib/message_strobe_random_impl.h +++ b/gr-blocks/lib/message_strobe_random_impl.h @@ -43,7 +43,7 @@ namespace gr { message_strobe_random_distribution_t d_dist; pmt::pmt_t d_msg; void run(); - float next_delay(); + long next_delay(); boost::mt19937 d_rng; boost::shared_ptr< boost::variate_generator <boost::mt19937, boost::poisson_distribution<> > > d_variate_poisson; diff --git a/gr-uhd/lib/usrp_block_impl.cc b/gr-uhd/lib/usrp_block_impl.cc index df1832ed2e..80a6fa67f9 100644 --- a/gr-uhd/lib/usrp_block_impl.cc +++ b/gr-uhd/lib/usrp_block_impl.cc @@ -129,7 +129,7 @@ bool usrp_block_impl::_wait_for_locked_sensor( while (true) { if ((not first_lock_time.is_not_a_date_time()) and - (boost::get_system_time() > (first_lock_time + boost::posix_time::seconds(LOCK_TIMEOUT)))) { + (boost::get_system_time() > (first_lock_time + boost::posix_time::seconds(static_cast<long>(LOCK_TIMEOUT))))) { break; } @@ -140,7 +140,7 @@ bool usrp_block_impl::_wait_for_locked_sensor( else { first_lock_time = boost::system_time(); //reset to 'not a date time' - if (boost::get_system_time() > (start + boost::posix_time::seconds(LOCK_TIMEOUT))){ + if (boost::get_system_time() > (start + boost::posix_time::seconds(static_cast<long>(LOCK_TIMEOUT)))) { return false; } } |