std::discrete_distribution< _IntType > Class Template Reference
Numerics » Random Number Generation » Random Number Distributions » Poisson Distributions

`#include <random.h>`

## Classes

struct | param_type

## Public Types

typedef _IntType | result_type

## Public Member Functions

template<typename _InputIterator >
| discrete_distribution (_InputIterator __wbegin, _InputIterator __wend)
| discrete_distribution (const param_type &__p)
| discrete_distribution (initializer_list< double > __wl)
template<typename _Func >
| discrete_distribution (size_t __nw, double __xmin, double __xmax, _Func __fw)
template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >
void | __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urng)
template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >
void | __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urng, const param_type &__p)
template<typename _UniformRandomNumberGenerator >
void | __generate (result_type *__f, result_type *__t, _UniformRandomNumberGenerator &__urng, const param_type &__p)
result_type | max () const
result_type | min () const
template<typename _UniformRandomNumberGenerator >
result_type | operator() (_UniformRandomNumberGenerator &__urng)
template<typename _UniformRandomNumberGenerator >
result_type | operator() (_UniformRandomNumberGenerator &__urng, const param_type &__p)
param_type | param () const
void | param (const param_type &__param)
std::vector< double > | probabilities () const
void | reset ()

## Friends

template<typename _IntType1 , typename _CharT , typename _Traits >
std::basic_ostream< _CharT, _Traits > & | operator<< (std::basic_ostream< _CharT, _Traits > &__os, const std::discrete_distribution< _IntType1 > &__x)
bool | operator== (const discrete_distribution &__d1, const discrete_distribution &__d2)
template<typename _IntType1 , typename _CharT , typename _Traits >
std::basic_istream< _CharT, _Traits > & | operator>> (std::basic_istream< _CharT, _Traits > &__is, std::discrete_distribution< _IntType1 > &__x)

## Detailed Description

template<typename _IntType = int>
class std::discrete_distribution< _IntType >

A discrete_distribution random number distribution.

The formula for the discrete probability mass function is

Definition at line 5282 of file random.h.

## Member Typedef Documentation

## result_type

template<typename _IntType = int>

typedef _IntType std::discrete_distribution< _IntType >::result_type

The type of the range of the distribution.

Definition at line 5289 of file random.h.

## Constructor & Destructor Documentation

## discrete_distribution() [1/5]

template<typename _IntType = int>

std::discrete_distribution< _IntType >::discrete_distribution | ( |  | ) |

inline

Definition at line 5339 of file random.h.

## discrete_distribution() [2/5]

template<typename _IntType = int>
template<typename _InputIterator >

std::discrete_distribution< _IntType >::discrete_distribution | ( | _InputIterator | __wbegin,
|  | _InputIterator | __wend
| ) |  |

inline

Definition at line 5344 of file random.h.

## discrete_distribution() [3/5]

template<typename _IntType = int>

std::discrete_distribution< _IntType >::discrete_distribution | ( | initializer_list< double > | __wl | ) |

inline

Definition at line 5349 of file random.h.

## discrete_distribution() [4/5]

template<typename _IntType = int>
template<typename _Func >

std::discrete_distribution< _IntType >::discrete_distribution | ( | size_t | __nw,
|  | double | __xmin,
|  | double | __xmax,
|  | _Func | __fw
| ) |  |

inline

Definition at line 5354 of file random.h.

## discrete_distribution() [5/5]

template<typename _IntType = int>

std::discrete_distribution< _IntType >::discrete_distribution | ( | const param_type & | __p | ) |

inline explicit

Definition at line 5360 of file random.h.

## Member Function Documentation

## __generate() [1/3]

template<typename _IntType = int>
template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >

void std::discrete_distribution< _IntType >::__generate | ( | _ForwardIterator | __f,
|  | _ForwardIterator | __t,
|  | _UniformRandomNumberGenerator & | __urng
| ) |  |

inline

Definition at line 5429 of file random.h.

## __generate() [2/3]

template<typename _IntType = int>
template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >

void std::discrete_distribution< _IntType >::__generate | ( | _ForwardIterator | __f,
|  | _ForwardIterator | __t,
|  | _UniformRandomNumberGenerator & | __urng,
|  | const param_type & | __p
| ) |  |

inline

Definition at line 5436 of file random.h.

## __generate() [3/3]

template<typename _IntType = int>
template<typename _UniformRandomNumberGenerator >

void std::discrete_distribution< _IntType >::__generate | ( | result_type * | __f,
|  | result_type * | __t,
|  | _UniformRandomNumberGenerator & | __urng,
|  | const param_type & | __p
| ) |  |

inline

Definition at line 5443 of file random.h.

## max()

template<typename _IntType = int>

result_type std::discrete_distribution< _IntType >::max | ( |  | ) | const

inline

Returns the least upper bound value of the distribution.

Definition at line 5407 of file random.h.

References std::vector< _Tp, _Alloc >::empty(), and std::vector< _Tp, _Alloc >::size().

## min()

template<typename _IntType = int>

result_type std::discrete_distribution< _IntType >::min | ( |  | ) | const

inline

Returns the greatest lower bound value of the distribution.

Definition at line 5400 of file random.h.

## operator()() [1/2]

template<typename _IntType = int>
template<typename _UniformRandomNumberGenerator >

result_type std::discrete_distribution< _IntType >::operator() | ( | _UniformRandomNumberGenerator & | __urng | ) |

inline

Generating functions.

Definition at line 5418 of file random.h.

References std::discrete_distribution< _IntType >::operator()().

Referenced by std::discrete_distribution< _IntType >::operator()().

## operator()() [2/2]

template<typename _IntType >
template<typename _UniformRandomNumberGenerator >

discrete_distribution< _IntType >::result_type std::discrete_distribution< _IntType >::operator() | ( | _UniformRandomNumberGenerator & | __urng,
|  | const param_type & | __p
| ) |  |

Definition at line 2707 of file bits/random.tcc.

## param() [1/2]

template<typename _IntType = int>

param_type std::discrete_distribution< _IntType >::param | ( |  | ) | const

inline

Returns the parameter set of the distribution.

Definition at line 5385 of file random.h.

## param() [2/2]

template<typename _IntType = int>

void std::discrete_distribution< _IntType >::param | ( | const param_type & | __param | ) |

inline

Sets the parameter set of the distribution.

Parameters

  __param | The new parameter set of the distribution.

Definition at line 5393 of file random.h.

## probabilities()

template<typename _IntType = int>

std::vector< double > std::discrete_distribution< _IntType >::probabilities | ( |  | ) | const

inline

Returns the probabilities of the distribution.

Definition at line 5375 of file random.h.

References std::vector< _Tp, _Alloc >::empty().

## reset()

template<typename _IntType = int>

void std::discrete_distribution< _IntType >::reset | ( |  | ) |

inline

Resets the distribution state.

Definition at line 5368 of file random.h.

## Friends And Related Symbol Documentation

## operator<<

template<typename _IntType = int>
template<typename _IntType1 , typename _CharT , typename _Traits >

std::basic_ostream< _CharT, _Traits > & operator<< | ( | std::basic_ostream< _CharT, _Traits > & | __os,
|  | const std::discrete_distribution< _IntType1 > & | __x
| ) |  |

friend

Inserts a discrete_distribution random number distribution `__x` into the output stream `__os`.

Parameters

  __os | An output stream.
  __x | A discrete_distribution random number distribution.

Returns
  The output stream with the state of `__x` inserted or in an error state.

## operator==

template<typename _IntType = int>

bool operator== | ( | const discrete_distribution< _IntType > & | __d1,
|  | const discrete_distribution< _IntType > & | __d2
| ) |  |

friend

Return true if two discrete distributions have the same parameters.

Definition at line 5453 of file random.h.

## operator>>

template<typename _IntType = int>
template<typename _IntType1 , typename _CharT , typename _Traits >

std::basic_istream< _CharT, _Traits > & operator>> | ( | std::basic_istream< _CharT, _Traits > & | __is,
|  | std::discrete_distribution< _IntType1 > & | __x
| ) |  |

friend

Extracts a discrete_distribution random number distribution `__x` from the input stream `__is`.

Parameters

  __is | An input stream.
  __x | A discrete_distribution random number generator engine.

Returns
  The input stream with `__x` extracted or in an error state.

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

- random.h
- bits/random.tcc