An instantiation of class template independent_bits_engine model a .
More...
#include <independent_bits.hpp>
Public Types | |
| typedef Engine | base_type |
| typedef UIntType | result_type |
Public Member Functions | |
| BOOST_STATIC_CONSTANT (bool, has_fixed_range=false) | |
| independent_bits_engine () | |
Constructs an independent_bits_engine using the default constructor of the base generator. More... | |
| BOOST_RANDOM_DETAIL_ARITHMETIC_CONSTRUCTOR (independent_bits_engine, result_type, seed_arg) | |
Constructs an independent_bits_engine, using seed as the constructor argument for both base generators. More... | |
| BOOST_RANDOM_DETAIL_SEED_SEQ_CONSTRUCTOR (independent_bits_engine, SeedSeq, seq) | |
Constructs an independent_bits_engine, using seq as the constructor argument for the base generator. More... | |
| independent_bits_engine (const base_type &base_arg) | |
Constructs an independent_bits_engine by copying base. More... | |
| template<class It > | |
| independent_bits_engine (It &first, It last) | |
Contructs an independent_bits_engine with values from the range defined by the input iterators first and last. More... | |
| void | seed () |
Seeds an independent_bits_engine using the default seed of the base generator. More... | |
| BOOST_RANDOM_DETAIL_ARITHMETIC_SEED (independent_bits_engine, result_type, seed_arg) | |
Seeds an independent_bits_engine, using seed as the seed for the base generator. More... | |
| BOOST_RANDOM_DETAIL_SEED_SEQ_SEED (independent_bits_engine, SeedSeq, seq) | |
Seeds an independent_bits_engine, using seq to seed the base generator. More... | |
| template<class It > | |
| void | seed (It &first, It last) |
Seeds an independent_bits_engine with values from the range defined by the input iterators first and last. More... | |
| result_type | operator() () |
| Returns the next value of the generator. More... | |
| template<class Iter > | |
| void | generate (Iter first, Iter last) |
| Fills a range with random values. More... | |
| void | discard (boost::uintmax_t z) |
Advances the state of the generator by z. More... | |
| const base_type & | base () const |
| BOOST_RANDOM_DETAIL_OSTREAM_OPERATOR (os, independent_bits_engine, r) | |
Writes the textual representation if the generator to a std::ostream. More... | |
| BOOST_RANDOM_DETAIL_ISTREAM_OPERATOR (is, independent_bits_engine, r) | |
Reads the state of an independent_bits_engine from a std::istream. More... | |
| BOOST_RANDOM_DETAIL_EQUALITY_OPERATOR (independent_bits_engine, x, y) | |
Returns: true iff the two independent_bits_engines will produce the same sequence of values. More... | |
Static Public Member Functions | |
| static result_type min | BOOST_PREVENT_MACRO_SUBSTITUTION () |
| Returns the smallest value that the generator can produce. More... | |
| static result_type max | BOOST_PREVENT_MACRO_SUBSTITUTION () |
| Returns the largest value that the generator can produce. More... | |
An instantiation of class template independent_bits_engine model a .
It generates random numbers distributed between [0, 2^w) by combining one or more invocations of the base engine.
Requires: 0 < w <= std::numeric_limits<UIntType>::digits
| typedef Engine boost::random::independent_bits_engine< Engine, w, UIntType >::base_type |
| typedef UIntType boost::random::independent_bits_engine< Engine, w, UIntType >::result_type |
|
inline |
Constructs an independent_bits_engine using the default constructor of the base generator.
|
inline |
Constructs an independent_bits_engine by copying base.
|
inline |
Contructs an independent_bits_engine with values from the range defined by the input iterators first and last.
first will be modified to point to the element after the last one used.
Throws: std::invalid_argument if the input range is too small.
Exception Safety: Basic
|
inline |
|
inlinestatic |
Returns the smallest value that the generator can produce.
|
inlinestatic |
Returns the largest value that the generator can produce.
|
inline |
Constructs an independent_bits_engine, using seed as the constructor argument for both base generators.
|
inline |
Seeds an independent_bits_engine, using seed as the seed for the base generator.
|
inline |
Returns: true iff the two independent_bits_engines will produce the same sequence of values.
References boost::flyweights::x, and boost::polygon::y().
|
inline |
Reads the state of an independent_bits_engine from a std::istream.
|
inline |
Writes the textual representation if the generator to a std::ostream.
The textual representation of the engine is the textual representation of the base engine.
|
inline |
Constructs an independent_bits_engine, using seq as the constructor argument for the base generator.
|
inline |
Seeds an independent_bits_engine, using seq to seed the base generator.
| boost::random::independent_bits_engine< Engine, w, UIntType >::BOOST_STATIC_CONSTANT | ( | bool | , |
| has_fixed_range | = false |
||
| ) |
|
inline |
Advances the state of the generator by z.
References boost::multiprecision::backends::i.
|
inline |
Fills a range with random values.
|
inline |
Returns the next value of the generator.
References BOOST_ASSERT, boost::math::tools::digits(), boost::integer_log2(), boost::accumulators::extract::max, and boost::n.
|
inline |
Seeds an independent_bits_engine using the default seed of the base generator.
|
inline |
Seeds an independent_bits_engine with values from the range defined by the input iterators first and last.
first will be modified to point to the element after the last one used.
Throws: std::invalid_argument if the input range is too small.
Exception Safety: Basic