lemon/random.h
changeset 107 31a2e6d28f61
parent 92 5d4decd1b870
child 110 f2d66d810c88
equal deleted inserted replaced
9:0b481549ff48 10:205896e50f77
   573         core.copyState(other.core);
   573         core.copyState(other.core);
   574       }
   574       }
   575       return *this;
   575       return *this;
   576     }
   576     }
   577 
   577 
       
   578     /// \brief Seeding random sequence
       
   579     ///
       
   580     /// Seeding the random sequence. The current number type will be
       
   581     /// converted to the architecture word type.
       
   582     template <typename Number>
       
   583     void seed(Number seed) { 
       
   584       _random_bits::Initializer<Number, Word>::init(core, seed);
       
   585     }
       
   586 
       
   587     /// \brief Seeding random sequence
       
   588     ///
       
   589     /// Seeding the random sequence. The given range should contain
       
   590     /// any number type and the numbers will be converted to the
       
   591     /// architecture word type.
       
   592     template <typename Iterator>
       
   593     void seed(Iterator begin, Iterator end) { 
       
   594       typedef typename std::iterator_traits<Iterator>::value_type Number;
       
   595       _random_bits::Initializer<Number, Word>::init(core, begin, end);
       
   596     }
       
   597 
   578     /// \brief Returns a random real number from the range [0, 1)
   598     /// \brief Returns a random real number from the range [0, 1)
   579     ///
   599     ///
   580     /// It returns a random real number from the range [0, 1). The
   600     /// It returns a random real number from the range [0, 1). The
   581     /// default Number type is \c double.
   601     /// default Number type is \c double.
   582     template <typename Number>
   602     template <typename Number>