Embedded Template Library 1.0
etl::random_lsfr Class Reference

#include <random.h>

Public Member Functions

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

Detailed Description

A 32 bit random number generator. Uses a linear shift feedback register. Polynomial 0x80200003 https://en.wikipedia.org/wiki/Linear-feedback_shift_register

Constructor & Destructor Documentation

◆ random_lsfr() [1/2]

etl::random_lsfr::random_lsfr ( )
inline

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

◆ random_lsfr() [2/2]

etl::random_lsfr::random_lsfr ( uint32_t  seed)
inline

Constructor with seed value.

Parameters
seedThe new seed value.

Member Function Documentation

◆ initialise()

void etl::random_lsfr::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: