# Spec RngFunctor
Functor wrapper for random number generation.

Extends | Rng
All Extended | Rng
Defined in | <seqan/random.h>
Signature | `template <typename TRng, typename TPdf> class Rng<RngFunctor<TRng, TPdf> >;`

## Template Parameters

`TRng` | The random number generator type to use.
`TPdf` | The probability density function type to use.

## Member Function Overview

- `Rng::Rng(rng, pdf);`
  Constructor.

### Member Functions Inherited From Rng

- `operator()`

## Interface Function Overview

### Interface Functions Inherited From Rng

- `pickRandomNumber`

## Interface Metafunction Overview

### Interface Metafunctions Inherited From Rng

- `MaxValue`
- `MinValue`
- `Value`

## Member Functions Detail

### `Rng::Rng(rng, pdf);`

Constructor.

#### Parameters

`rng` | A reference to the underlying Rng to use.
`pdf` | A reference to the underlying Pdf to use.

#### Data Races

Thread safety unknown!

#### Dox Sources

    /*!
     * @class RngFunctor
     *
     * @extends Rng
     *
     * @headerfile <seqan/random.h>
     *
     * @brief Functor wrapper for random number generation.
     *
     * @signature template <typename TRng, typename TPdf> class Rng<RngFunctor<TRng,
     *            TPdf> >;
     *
     * @tparam TRng The random number generator type to use.
     * @tparam TPdf The probability density function type to use.
     *
     * @fn RngFunctor::Rng
     *
     * @headerfile <seqan/random.h>
     *
     * @brief Constructor.
     *
     * @signature Rng::Rng(rng, pdf);
     *
     * @param[in] rng A reference to the underlying Rng to use.
     * @param[in] pdf A reference to the underlying Pdf to use.
     */