Class TwoCmres.Cmres.Factory
- java.lang.Object
-
- org.apache.commons.rng.core.source64.TwoCmres.Cmres.Factory
-
- Enclosing class:
- TwoCmres.Cmres
static class TwoCmres.Cmres.Factory extends java.lang.Object
Factory.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.List<TwoCmres.Cmres>
TABLE
List of good "Cmres" subcycle generators.
-
Constructor Summary
Constructors Constructor Description Factory()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static void
add(long multiply, int rotate, int start)
Adds an entry to theTABLE
.(package private) static void
checkUnique(java.util.List<TwoCmres.Cmres> table, long multiply)
Check the multiply parameter is unique (not contained in any entry in the provided table).(package private) TwoCmres.Cmres
get(int index)
(package private) TwoCmres.Cmres
getIfDifferent(int index, int other)
Get the generator atindex
if theother
index is different.(package private) int
numberOfSubcycleGenerators()
-
-
-
Field Detail
-
TABLE
private static final java.util.List<TwoCmres.Cmres> TABLE
List of good "Cmres" subcycle generators.
-
-
Method Detail
-
numberOfSubcycleGenerators
int numberOfSubcycleGenerators()
- Returns:
- the number of subcycle generators.
-
get
TwoCmres.Cmres get(int index)
- Parameters:
index
- Index into the list of available generators.- Returns:
- the subcycle generator entry at index
index
.
-
getIfDifferent
TwoCmres.Cmres getIfDifferent(int index, int other)
Get the generator atindex
if theother
index is different.This method exists to raise an exception before invocation of the private constructor; this mitigates Finalizer attacks (see SpotBugs CT_CONSTRUCTOR_THROW).
- Parameters:
index
- Index into the list of available generators.other
- Other index.- Returns:
- the subcycle generator entry at index
index
.
-
add
private static void add(long multiply, int rotate, int start)
Adds an entry to theTABLE
.- Parameters:
multiply
- Multiplier.rotate
- Rotate.start
- Cycle start.
-
checkUnique
static void checkUnique(java.util.List<TwoCmres.Cmres> table, long multiply)
Check the multiply parameter is unique (not contained in any entry in the provided table).- Parameters:
table
- the tablemultiply
- the multiply parameter
-
-