Stefan Scholz / ETL
Embed: (wiki syntax)

« Back to documentation index

random_mwc Class Reference

random_mwc Class Reference

A 32 bit random number generator. More...

#include <random.h>

Inherits etl::random.

Public Member Functions

 random_mwc ()
 Default constructor.
 random_mwc (uint32_t seed)
 Constructor with seed value.
void initialise (uint32_t seed)
 Initialises the sequence with a new seed value.
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 multiply with carry calculation.

Definition at line 150 of file random.h.


Constructor & Destructor Documentation

random_mwc (  )

Default constructor.

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

Definition at line 301 of file random.cpp.

random_mwc ( uint32_t  seed ) [explicit]

Constructor with seed value.

Parameters:
seedThe new seed value.

Definition at line 314 of file random.cpp.


Member Function Documentation

void initialise ( uint32_t  seed ) [virtual]

Initialises the sequence with a new seed value.

Parameters:
seedThe new seed value.

Implements random.

Definition at line 323 of file random.cpp.

uint32_t operator() (  ) [virtual]

Get the next random_lsfr number.

Implements random.

Definition at line 332 of file random.cpp.

uint32_t range ( uint32_t  low,
uint32_t  high 
) [virtual]

Get the next random_lsfr number in a specified inclusive range.

Implements random.

Definition at line 343 of file random.cpp.