Uses of Interface
io.github.pr0methean.betterrandom.ByteArrayReseedableRandom
-
Packages that use ByteArrayReseedableRandom Package Description io.github.pr0methean.betterrandom.prng Subclasses ofRandomusing different random-number generation algorithms.io.github.pr0methean.betterrandom.prng.adapter Implementations ofBaseRandomthat are backed by instances ofSplittableRandomorRandom, many of them wrapped inThreadLocal<?>to allow concurrent use of a shared instance by multiple threads.io.github.pr0methean.betterrandom.seed Tools to obtain and apply truly-random seeds forRandomimplementations, especially those that also implementByteArrayReseedableRandom. -
-
Uses of ByteArrayReseedableRandom in io.github.pr0methean.betterrandom.prng
Classes in io.github.pr0methean.betterrandom.prng that implement ByteArrayReseedableRandom Modifier and Type Class Description classAesCounterRandomCipherCounterRandom using AES (Rijndael).classBaseRandomAbstractRandomwith a seed field and an implementation of entropy counting.classCipherCounterRandomNon-linear random number generator based on a cipher that encrypts an incrementing counter.classCmwc4096RandomA Java version of George Marsaglia's Complementary Multiply With Carry (CMWC) RNG.classMersenneTwisterRandomRandom number generator based on the Mersenne Twister algorithm developed by Makoto Matsumoto and Takuji Nishimura.classPcg128RandomFrom the original description, "PCG is a family of simple fast space-efficient statistically good algorithms for random number generation.classPcg64RandomFrom the original description, "PCG is a family of simple fast space-efficient statistically good algorithms for random number generation.classXorShiftRandomVery fast pseudo random number generator. -
Uses of ByteArrayReseedableRandom in io.github.pr0methean.betterrandom.prng.adapter
Classes in io.github.pr0methean.betterrandom.prng.adapter that implement ByteArrayReseedableRandom Modifier and Type Class Description classBaseSplittableRandomAdapterAbstract class for implementations ofBaseRandomthat wrap one or moreSplittableRandominstances.classEntropyBlockingRandomWrapper<T extends Random>ARandomWrapperwith 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 aRandomSeederor, if none is installed, reseed itself on the calling thread with aSeedGenerator.classEntropyBlockingSplittableRandomAdapterASplittableRandomAdapterthat blocks waiting to be reseeded if its entropy drops too low.classRandomWrapper<T extends Random>classReseedingThreadLocalRandomWrapper<T extends BaseRandom>AThreadLocalRandomWrapperthat reseeds all its instances using aRandomSeeder.classSingleThreadSplittableRandomAdapterSimple, non-thread-safe implementation ofBaseRandomthat wraps aSplittableRandom.classSplittableRandomAdapterThread-safe PRNG that wraps aThreadLocal<SplittableRandom>.classThreadLocalRandomWrapper<T extends BaseRandom>Wraps aThreadLocal<BaseRandom> in order to provide concurrency that most implementations ofBaseRandomcan't implement naturally. -
Uses of ByteArrayReseedableRandom in io.github.pr0methean.betterrandom.seed
Fields in io.github.pr0methean.betterrandom.seed with type parameters of type ByteArrayReseedableRandom Modifier and Type Field Description protected Set<ByteArrayReseedableRandom>RandomSeeder. byteArrayPrngsHoldsByteArrayReseedableRandominstances that should be reseeded when their entropy is low, or as often as possible if they don't implementEntropyCountingRandom.Methods in io.github.pr0methean.betterrandom.seed with parameters of type ByteArrayReseedableRandom Modifier and Type Method Description voidRandomSeeder. add(ByteArrayReseedableRandom... randoms)AddsByteArrayReseedableRandominstances.voidRandomSeeder. remove(ByteArrayReseedableRandom... randoms)Removes PRNGs so that they will no longer be reseeded.Method parameters in io.github.pr0methean.betterrandom.seed with type arguments of type ByteArrayReseedableRandom Modifier and Type Method Description voidRandomSeeder. add(Collection<? extends ByteArrayReseedableRandom> randoms)AddsByteArrayReseedableRandominstances.voidRandomSeeder. remove(Collection<? extends ByteArrayReseedableRandom> randoms)Removes PRNGs so that they will no longer be reseeded.protected booleanRandomSeeder. reseedByteArrayReseedableRandoms(Iterable<? extends ByteArrayReseedableRandom> randoms)Reseeds all the PRNGs that need reseeding inrandoms.
-