STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
bernoulli_distribution Class Reference

Classes

struct  param_type
 

Public Types

typedef bernoulli_distribution _Myt
 
typedef int input_type
 
typedef bool result_type
 

Public Member Functions

 bernoulli_distribution (double _P0=0.5)
 
 bernoulli_distribution (param_type _Par0)
 
double p () const
 
param_type param () const
 
void param (const param_type &_Par0)
 
result_type() min () const
 
result_type() max () const
 
void reset ()
 
template<class _Engine >
result_type operator() (_Engine &_Eng) const
 
template<class _Engine >
result_type operator() (_Engine &_Eng, const param_type &_Par0) const
 
template<class _Elem , class _Traits >
basic_istream< _Elem, _Traits > & _Read (basic_istream< _Elem, _Traits > &_Istr)
 
template<class _Elem , class _Traits >
basic_ostream< _Elem, _Traits > & _Write (basic_ostream< _Elem, _Traits > &_Ostr) const
 

Private Member Functions

template<class _Engine >
result_type _Eval (_Engine &_Eng, const param_type &_Par0) const
 

Private Attributes

param_type _Par
 

Member Typedef Documentation

Constructor & Destructor Documentation

bernoulli_distribution::bernoulli_distribution ( double  _P0 = 0.5)
inlineexplicit
2847  : _Par(_P0)
2848  { // construct
2849  }
param_type _Par
Definition: random:2924
bernoulli_distribution::bernoulli_distribution ( param_type  _Par0)
inlineexplicit
2852  : _Par(_Par0)
2853  { // construct from parameter package
2854  }
param_type _Par
Definition: random:2924

Member Function Documentation

template<class _Engine >
result_type bernoulli_distribution::_Eval ( _Engine &  _Eng,
const param_type _Par0 
) const
inlineprivate
2920  { // return next value
2921  return (_NRAND(_Eng, double) < _Par0._Px);
2922  }
#define _NRAND(eng, resty)
Definition: random:74
template<class _Elem , class _Traits >
basic_istream<_Elem, _Traits>& bernoulli_distribution::_Read ( basic_istream< _Elem, _Traits > &  _Istr)
inline
2901  { // read state from _Istr
2902  double _P0;
2903  _In(_Istr, _P0);
2904  _Par._Init(_P0);
2905  return (_Istr);
2906  }
basic_istream< _Elem, _Traits > & _In(basic_istream< _Elem, _Traits > &_Is, _Ty &_Dx)
Definition: random:151
param_type _Par
Definition: random:2924
void _Init(double _P0)
Definition: random:2835
template<class _Elem , class _Traits >
basic_ostream<_Elem, _Traits>& bernoulli_distribution::_Write ( basic_ostream< _Elem, _Traits > &  _Ostr) const
inline
2912  { // write state to _Ostr
2913  _Out(_Ostr, _Par._Px);
2914  return (_Ostr);
2915  }
basic_ostream< _Elem, _Traits > & _Out(basic_ostream< _Elem, _Traits > &_Os, _Ty _Dx)
Definition: random:169
double _Px
Definition: random:2843
param_type _Par
Definition: random:2924
result_type() bernoulli_distribution::max ( ) const
inline
2877  { // get largest possible result
2878  return (true);
2879  }
result_type() bernoulli_distribution::min ( ) const
inline
2872  { // get smallest possible result
2873  return (false);
2874  }
template<class _Engine >
result_type bernoulli_distribution::operator() ( _Engine &  _Eng) const
inline
2887  { // return next value
2888  return (_Eval(_Eng, _Par));
2889  }
result_type _Eval(_Engine &_Eng, const param_type &_Par0) const
Definition: random:2919
param_type _Par
Definition: random:2924
template<class _Engine >
result_type bernoulli_distribution::operator() ( _Engine &  _Eng,
const param_type _Par0 
) const
inline
2893  { // return next value, given parameter package
2894  return (_Eval(_Eng, _Par0));
2895  }
result_type _Eval(_Engine &_Eng, const param_type &_Par0) const
Definition: random:2919
double bernoulli_distribution::p ( ) const
inline
2857  { // return probability
2858  return (_Par.p());
2859  }
param_type _Par
Definition: random:2924
double p() const
Definition: random:2830
param_type bernoulli_distribution::param ( ) const
inline
2862  { // return parameter package
2863  return (_Par);
2864  }
param_type _Par
Definition: random:2924
void bernoulli_distribution::param ( const param_type _Par0)
inline
2867  { // set parameter package
2868  _Par = _Par0;
2869  }
param_type _Par
Definition: random:2924
void bernoulli_distribution::reset ( )
inline
2882  { // clear internal state
2883  }

Member Data Documentation

param_type bernoulli_distribution::_Par
private

The documentation for this class was generated from the following file: