1#ifndef FPMAS_RANDOM_DISTRIBUTION_H
2#define FPMAS_RANDOM_DISTRIBUTION_H
11namespace fpmas {
namespace random {
23 template<
typename Distribution_t>
26 Distribution_t distrib;
40 template<
typename... Args>
53 template<
typename Generator_t>
55 return distrib(generator);
77 template<
typename IntType =
int>
84 template<
typename FloatType =
double>
97 template<
typename IntType =
unsigned int>
104 template<
typename FloatType =
double>
111 template<
typename IntType =
int>
125 template<
typename IntType = std::
size_t>
136 template<
typename Container>
175 template<
typename Generator_t>
Definition: distribution.h:18
Definition: distribution.h:151
T result_type
Definition: distribution.h:159
result_type max() const override
Definition: distribution.h:190
result_type min() const override
Definition: distribution.h:183
result_type operator()(Generator_t &)
Definition: distribution.h:176
ConstantDistribution(const T &value)
Definition: distribution.h:166
Definition: distribution.h:126
DiscreteDistribution(const Container &c)
Definition: distribution.h:137
Definition: distribution.h:24
Distribution(Args... args)
Definition: distribution.h:41
Distribution_t::result_type result_type
Definition: distribution.h:32
result_type operator()(Generator_t &generator)
Definition: distribution.h:54
result_type min() const override
Definition: distribution.h:61
result_type max() const override
Definition: distribution.h:68
Distribution< std::bernoulli_distribution > BernoulliDistribution
Definition: distribution.h:91