|  | Home | Libraries | People | FAQ | More | 
boost::random::piecewise_constant_distribution::param_type
// In header: <boost/random/piecewise_constant_distribution.hpp> class param_type { public: // types typedef piecewise_constant_distribution distribution_type; // construct/copy/destruct param_type(); template<typename IntervalIter, typename WeightIter> param_type(IntervalIter, IntervalIter, WeightIter); template<typename T, typename F> param_type(const std::initializer_list< T > &, F); template<typename IntervalRange, typename WeightRange> param_type(const IntervalRange &, const WeightRange &); template<typename F> param_type(std::size_t, RealType, RealType, F); // friend functions template<typename CharT, typename Traits> friend std::basic_ostream< CharT, Traits > & operator<<(std::basic_ostream< CharT, Traits > &, const param_type &); template<typename CharT, typename Traits> friend std::basic_istream< CharT, Traits > & operator>>(std::basic_istream< CharT, Traits > &, const param_type &); friend bool operator==(const param_type &, const param_type &); friend bool operator!=(const param_type &, const param_type &); // public member functions std::vector< RealType > intervals() const; std::vector< RealType > densities() const; };
param_type 
        public
       construct/copy/destructparam_type();
Constructs a param_type
template<typename IntervalIter, typename WeightIter> param_type(IntervalIter intervals_first, IntervalIter intervals_last, WeightIter weight_first);
Constructs a param_type
The values of the interval boundaries must be strictly increasing, and the number of weights must be one less than the number of interval boundaries. If there are extra weights, they are ignored.
template<typename T, typename F> param_type(const std::initializer_list< T > & il, F f);
Constructs a param_type
If the initializer_list contains less than two elements, this is equivalent to the default constructor and the distribution will produce values uniformly distributed in the range [0, 1).
template<typename IntervalRange, typename WeightRange> param_type(const IntervalRange & intervals_arg, const WeightRange & weights_arg);
Constructs a param_type
template<typename F> param_type(std::size_t nw, RealType xmin, RealType xmax, F f);
Constructs the parameters for a distribution that approximates a function. The range of the distribution is [xmin, xmax). This range is divided into nw equally sized intervals and the weights are found by calling the unary function f on the midpoints of the intervals.
param_type friend functionstemplate<typename CharT, typename Traits> friend std::basic_ostream< CharT, Traits > & operator<<(std::basic_ostream< CharT, Traits > & os, const param_type & param);
Writes the parameters to a std::ostream. 
template<typename CharT, typename Traits> friend std::basic_istream< CharT, Traits > & operator>>(std::basic_istream< CharT, Traits > & is, const param_type & param);
Reads the parameters from a std::istream. 
friend bool operator==(const param_type & lhs, const param_type & rhs);
Returns true if the two sets of parameters are the same.
friend bool operator!=(const param_type & lhs, const param_type & rhs);
Returns true if the two sets of parameters are different.