All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Functions
Random.h File Reference
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <random>
#include <stdexcept>
#include "Log.h"

Go to the source code of this file.

Namespaces

 Aux
 
 Aux::Random
 Provides several functions for random-numbers.
 

Functions

void Aux::Random::setSeed (uint64_t seed, bool useThreadId)
 Sets the random seed that is used globally. More...
 
uint64_t Aux::Random::getSeed ()
 
std::mt19937_64 & Aux::Random::getURNG ()
 
uint64_t Aux::Random::integer ()
 
uint64_t Aux::Random::integer (uint64_t upperBound)
 
uint64_t Aux::Random::integer (uint64_t lowerBound, uint64_t upperBound)
 
double Aux::Random::real ()
 
double Aux::Random::real (double upperBound)
 
double Aux::Random::real (double lowerBound, double upperBound)
 
double Aux::Random::probability ()
 
std::size_t Aux::Random::index (std::size_t max)
 
template<typename Container >
Container::const_reference Aux::Random::choice (const Container &container)
 
template<typename Element >
const Element & Aux::Random::weightedChoice (const std::vector< std::pair< Element, double >> &weightedElements)