Uses of Class
io.github.pr0methean.betterrandom.prng.BaseRandom
-
Packages that use BaseRandom Package Description io.github.pr0methean.betterrandom.prng Subclasses ofRandom
using different random-number generation algorithms.io.github.pr0methean.betterrandom.prng.adapter Implementations ofBaseRandom
that are backed by instances ofSplittableRandom
orRandom
, many of them wrapped inThreadLocal
<?>
to allow concurrent use of a shared instance by multiple threads. -
-
Uses of BaseRandom in io.github.pr0methean.betterrandom.prng
Subclasses of BaseRandom in io.github.pr0methean.betterrandom.prng Modifier and Type Class Description class
AesCounterRandom
CipherCounterRandom using AES (Rijndael).class
CipherCounterRandom
Non-linear random number generator based on a cipher that encrypts an incrementing counter.class
Cmwc4096Random
A Java version of George Marsaglia's Complementary Multiply With Carry (CMWC) RNG.class
MersenneTwisterRandom
Random number generator based on the Mersenne Twister algorithm developed by Makoto Matsumoto and Takuji Nishimura.class
Pcg128Random
From the original description, "PCG is a family of simple fast space-efficient statistically good algorithms for random number generation.class
Pcg64Random
From the original description, "PCG is a family of simple fast space-efficient statistically good algorithms for random number generation.class
XorShiftRandom
Very fast pseudo random number generator. -
Uses of BaseRandom in io.github.pr0methean.betterrandom.prng.adapter
Classes in io.github.pr0methean.betterrandom.prng.adapter with type parameters of type BaseRandom Modifier and Type Class Description class
ReseedingThreadLocalRandomWrapper<T extends BaseRandom>
AThreadLocalRandomWrapper
that reseeds all its instances using aRandomSeeder
.class
ThreadLocalRandomWrapper<T extends BaseRandom>
Wraps aThreadLocal
<BaseRandom
> in order to provide concurrency that most implementations ofBaseRandom
can't implement naturally.Subclasses of BaseRandom in io.github.pr0methean.betterrandom.prng.adapter Modifier and Type Class Description class
BaseSplittableRandomAdapter
Abstract class for implementations ofBaseRandom
that wrap one or moreSplittableRandom
instances.class
EntropyBlockingRandomWrapper<T extends Random>
ARandomWrapper
with the additional property that it won't return any output that would take its entropy below a minimum amount, and will instead either wait to be reseeded by aRandomSeeder
or, if none is installed, reseed itself on the calling thread with aSeedGenerator
.class
EntropyBlockingSplittableRandomAdapter
ASplittableRandomAdapter
that blocks waiting to be reseeded if its entropy drops too low.class
RandomWrapper<T extends Random>
class
ReseedingThreadLocalRandomWrapper<T extends BaseRandom>
AThreadLocalRandomWrapper
that reseeds all its instances using aRandomSeeder
.class
SingleThreadSplittableRandomAdapter
Simple, non-thread-safe implementation ofBaseRandom
that wraps aSplittableRandom
.class
SplittableRandomAdapter
Thread-safe PRNG that wraps aThreadLocal
<SplittableRandom
>.class
ThreadLocalRandomWrapper<T extends BaseRandom>
Wraps aThreadLocal
<BaseRandom
> in order to provide concurrency that most implementations ofBaseRandom
can't implement naturally.Fields in io.github.pr0methean.betterrandom.prng.adapter with type parameters of type BaseRandom Modifier and Type Field Description protected ThreadLocal<BaseRandom>
SplittableRandomAdapter. threadLocal
A thread-local delegate.Methods in io.github.pr0methean.betterrandom.prng.adapter that return BaseRandom Modifier and Type Method Description protected BaseRandom
SplittableRandomAdapter. createDelegate()
Creates the delegate for the calling thread.Methods in io.github.pr0methean.betterrandom.prng.adapter that return types with arguments of type BaseRandom Modifier and Type Method Description static ReseedingThreadLocalRandomWrapper<BaseRandom>
ReseedingThreadLocalRandomWrapper. wrapLegacy(SerializableLongFunction<Random> legacyCreator, SeedGenerator seedGenerator)
Uses this class andRandomWrapper
to decorate any implementation ofRandom
that can be constructed from along
seed into a fully-concurrent one.static ThreadLocalRandomWrapper<BaseRandom>
ThreadLocalRandomWrapper. wrapLegacy(SerializableLongFunction<Random> legacyCreator, SeedGenerator seedGenerator)
Uses this class andRandomWrapper
to decorate any implementation ofRandom
that can be constructed from along
seed into a fully-concurrent one.
-