Embedded Template Library 1.0
etl::random_clcg Class Reference

#include <random.h>

Public Member Functions

 random_clcg ()
 
 random_clcg (uint32_t seed)
 
void initialise (uint32_t seed)
 
uint32_t operator() ()
 Get the next random_clcg number.
 
uint32_t range (uint32_t low, uint32_t high)
 Get the next random_clcg number in a specified inclusive range.
 

Detailed Description

A 32 bit random number generator. Uses a combined linear congruential generator. https://cs.adelaide.edu.au/~paulc/teaching/montecarlo/node107.html

Constructor & Destructor Documentation

◆ random_clcg() [1/2]

etl::random_clcg::random_clcg ( )
inline

Default constructor. Attempts to come up with a unique non-zero seed.

◆ random_clcg() [2/2]

etl::random_clcg::random_clcg ( uint32_t  seed)
inline

Constructor with seed value.

Parameters
seedThe new seed value.

Member Function Documentation

◆ initialise()

void etl::random_clcg::initialise ( uint32_t  seed)
inline

Initialises the sequence with a new seed value.

Parameters
seedThe new seed value.

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