LeviLamina
Loading...
Searching...
No Matches
Core::Random Class Reference
+ Inheritance diagram for Core::Random:

Public Types

using result_type = uint
 

Public Member Functions

virtual bool nextBoolean ()
 
virtual float nextFloat ()
 
virtual double nextDouble ()
 
virtual int nextInt ()
 
virtual int nextInt (int n)
 
virtual int64 nextLong ()
 
virtual void consumeCount (uint count)
 
virtual double nextGaussianDouble ()
 
virtual ::std::unique_ptr<::IRandomfork ()
 
MCAPI Random (uint seed, bool onlyUsedDeterministically)
 
MCAPI uint _genRandInt32 ()
 
MCAPI float nextGaussian ()
 
MCAPI void * $ctor ()
 
MCAPI void * $ctor (uint seed, bool onlyUsedDeterministically)
 
MCFOLD void $dtor ()
 
MCAPI bool $nextBoolean ()
 
MCAPI float $nextFloat ()
 
MCAPI double $nextDouble ()
 
MCAPI int $nextInt ()
 
MCAPI int $nextInt (int n)
 
MCAPI int64 $nextLong ()
 
MCAPI void $consumeCount (uint count)
 
MCAPI double $nextGaussianDouble ()
 
MCAPI ::std::unique_ptr<::IRandom$fork ()
 
virtual ::std::unique_ptr<::IPositionalRandomFactoryforkPositional ()
 
MCFOLD ::std::unique_ptr<::IPositionalRandomFactory$forkPositional ()
 

Static Public Member Functions

static MCAPI ::std::random_device & mRandomDevice ()
 
static MCAPI ::Bedrock::Threading::ThreadLocalObject<::Core::Random > & mThreadLocalRandom ()
 
static MCAPI void ** $vftable ()
 

Public Attributes

::ll::TypedStorage< 4, 4, uint > mSeed
 
::ll::TypedStorage< 4, 2496, uint[624]> _mt
 
::ll::TypedStorage< 4, 4, int > _mti
 
::ll::TypedStorage< 4, 4, int > mInitedIdx
 
::ll::TypedStorage< 4, 4, float > mNextNextGaussian
 
::ll::TypedStorage< 8, 8, double > mNextNextGaussianDouble
 
::ll::TypedStorage< 4, 4, uint > mFakeUniformRandomInt
 
::ll::TypedStorage< 1, 1, bool > mHaveNextNextGaussian
 
::ll::TypedStorage< 1, 1, bool > mHaveNextNextGaussianDouble
 
::ll::TypedStorage< 1, 1, bool > mTest_OnlyUsedDeterministically
 

Member Function Documentation

◆ nextBoolean()

virtual bool Core::Random::nextBoolean ( )
virtual

Implements IRandom.

◆ nextFloat()

virtual float Core::Random::nextFloat ( )
virtual

Implements IRandom.

◆ nextDouble()

virtual double Core::Random::nextDouble ( )
virtual

Implements IRandom.

◆ nextInt() [1/2]

virtual int Core::Random::nextInt ( )
virtual

Implements IRandom.

◆ nextInt() [2/2]

virtual int Core::Random::nextInt ( int n)
virtual

Implements IRandom.

◆ nextLong()

virtual int64 Core::Random::nextLong ( )
virtual

Implements IRandom.

◆ consumeCount()

virtual void Core::Random::consumeCount ( uint count)
virtual

Implements IRandom.

◆ nextGaussianDouble()

virtual double Core::Random::nextGaussianDouble ( )
virtual

Implements IRandom.

◆ fork()

virtual ::std::unique_ptr<::IRandom > Core::Random::fork ( )
virtual

Implements IRandom.


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