summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/lib/math
diff options
context:
space:
mode:
authorJohnathan Corgan <johnathan@corganlabs.com>2017-03-20 20:51:28 -0700
committerJohnathan Corgan <johnathan@corganlabs.com>2017-03-20 20:51:28 -0700
commitea6d423696f5359265e58b23c266f3ef3b3d72d4 (patch)
tree4302729beb04548061b73f84d3f56dfd2beeb4d2 /gnuradio-runtime/lib/math
parentffa0822abf7a30f9b44b3fb046cb6d723c4d8c37 (diff)
parentfab36b019183844d539e387554fad70058d70caa (diff)
Merge branch 'next' into python3
Diffstat (limited to 'gnuradio-runtime/lib/math')
-rw-r--r--gnuradio-runtime/lib/math/random.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/gnuradio-runtime/lib/math/random.cc b/gnuradio-runtime/lib/math/random.cc
index 35f63076b2..59f2f22bd0 100644
--- a/gnuradio-runtime/lib/math/random.cc
+++ b/gnuradio-runtime/lib/math/random.cc
@@ -51,7 +51,7 @@ namespace gr {
// Setup random number generators
d_rng = new boost::mt19937; // random numbers are generated here.
d_uniform = new boost::uniform_real<float>; // map random number to distribution
- d_integer_dis = new boost::random::uniform_int_distribution<>(0, 1); // another "mapper"
+ d_integer_dis = new boost::uniform_int<>(0, 1); // another "mapper"
d_generator = NULL; // MUST be reinstantiated on every call to reseed.
d_integer_generator = NULL; // MUST be reinstantiated on everytime d_rng or d_integer_dis is changed.
reseed(seed); // set seed for random number generator
@@ -80,16 +80,17 @@ namespace gr {
delete d_generator;
d_generator = new boost::variate_generator<boost::mt19937&, boost::uniform_real<float> > (*d_rng,*d_uniform); // create number generator in [0,1) from boost.random
delete d_integer_generator;
- d_integer_generator = new boost::variate_generator<boost::mt19937&, boost::random::uniform_int_distribution<> >(*d_rng, *d_integer_dis);
+ d_integer_generator = new boost::variate_generator<boost::mt19937&, boost::uniform_int<> >(*d_rng, *d_integer_dis);
}
void
random::set_integer_limits(const int minimum, const int maximum){
// boost expects integer limits defined as [minimum, maximum] which is unintuitive.
- boost::random::uniform_int_distribution<>::param_type dis_params(minimum, maximum - 1);
- d_integer_dis->param(dis_params);
+ // use the expected half open interval behavior! [minimum, maximum)!
delete d_integer_generator;
- d_integer_generator = new boost::variate_generator<boost::mt19937&, boost::random::uniform_int_distribution<> >(*d_rng, *d_integer_dis);
+ delete d_integer_dis;
+ d_integer_dis = new boost::uniform_int<>(minimum, maximum - 1);
+ d_integer_generator = new boost::variate_generator<boost::mt19937&, boost::uniform_int<> >(*d_rng, *d_integer_dis);
}
/*!