![]() |
Home | Libraries | People | FAQ | More |
boost::random::independent_bits_engine
// In header: <boost/random/independent_bits.hpp> template<typename Engine, w, typename UIntType> class independent_bits_engine { public: // types typedef ; typedef ; typedef ; // construct/copy/destruct (); (); template<typename SeedSeq> (); (); template<typename It> (, ); // public static functions (); (); // public member functions (); (); template<typename SeedSeq> (); template<typename It> (, ); (); template<typename Iter> (, ); (); () ; // friend functions template<typename CharT, typename Traits> (, ); template<typename CharT, typename Traits> (, ); (, ); (, ); // public data members static has_fixed_range; };
An instantiation of class template independent_bits_engine model a pseudo-random number generator . 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
independent_bits_engine
public
construct/copy/destruct();
Constructs an using the default constructor of the base generator. independent_bits_engine
( seed);
Constructs an , using seed as the constructor argument for both base generators. independent_bits_engine
template<typename SeedSeq> ( seq);
Constructs an , using seq as the constructor argument for the base generator. independent_bits_engine
( base_arg);
Constructs an by copying independent_bits_enginebase.
template<typename It> ( first, last);
Contructs an 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.independent_bits_engine
Throws: std::invalid_argument if the input range is too small.
Exception Safety: Basic
independent_bits_engine public member functions();
Seeds an using the default seed of the base generator. independent_bits_engine
( seed);
Seeds an , using independent_bits_engineseed as the seed for the base generator.
template<typename SeedSeq> ( seq);
Seeds an , using independent_bits_engineseq to seed the base generator.
template<typename It> ( first, last);
Seeds an 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.independent_bits_engine
Throws: std::invalid_argument if the input range is too small.
Exception Safety: Basic
();
Returns the next value of the generator.
template<typename Iter> ( first, last);
Fills a range with random values
( z);
Advances the state of the generator by z.
() ;
independent_bits_engine friend functionstemplate<typename CharT, typename Traits> ( os, r);
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.
template<typename CharT, typename Traits> ( is, r);
Reads the state of an from a independent_bits_enginestd::istream.
( x, y);
Returns: true iff the two independent_bits_engines will produce the same sequence of values.
( lhs, rhs);
Returns: true iff the two independent_bits_engines will produce different sequences of values.