public static RandomVariateGenerator CreateNewPrng(GeneratorType generatorType, uint generatorSeed, uint seedIndex) { RandomVariateGenerator prng; switch (generatorType) { case GeneratorType.VANILLA: prng = DotNetVariateGenerator.CreateDotNetVariateGenerator(new[] { generatorSeed }); break; case GeneratorType.RANDLIB: prng = RandLibVariateGenerator.CreateRandLibVariateGenerator(new [] { generatorSeed }); break; case GeneratorType.PSEUDODES: prng = PseudoDesVariateGenerator.CreatePseudoDesVariateGenerator(new[] { generatorSeed, seedIndex }); break; case GeneratorType.AESCOUNTER: prng = AesCounterVariateGenerator.CreateAesCounterVariateGenerator(new [] { generatorSeed, seedIndex }); break; default: throw new ArgumentException($"Unknown/unsupported RNG type: {generatorType}"); } return(prng); }
private RandomVariateGenerator CreateVariateGenerator() { RandomVariateGenerator generator = DotNetVariateGenerator.CreateDotNetVariateGenerator(new uint[] { 19860201 }); return(generator); }