From 90804bdf2b3869580f2d0a050528ad49799f9a3f Mon Sep 17 00:00:00 2001 From: Thorsten Sommer Date: Sat, 26 Sep 2020 00:05:13 +0200 Subject: [PATCH] Refactored to use distributions --- FastRng/IRandom.cs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/FastRng/IRandom.cs b/FastRng/IRandom.cs index e8f672b..f75699b 100644 --- a/FastRng/IRandom.cs +++ b/FastRng/IRandom.cs @@ -1,15 +1,19 @@ +using System; using System.Threading; using System.Threading.Tasks; +using FastRng.Distributions; namespace FastRng { public interface IRandom { - public Task NextNumber(uint rangeStart, uint rangeEnd, CancellationToken cancel = default(CancellationToken)); + public Task GetUniformDouble(CancellationToken cancel = default); - public Task NextNumber(ulong rangeStart, ulong rangeEnd, CancellationToken cancel = default(CancellationToken)); + public Task NextNumber(uint rangeStart, uint rangeEnd, IDistribution distribution, CancellationToken cancel = default); - public Task NextNumber(float rangeStart, float rangeEnd, CancellationToken cancel = default(CancellationToken)); + public Task NextNumber(ulong rangeStart, ulong rangeEnd, IDistribution distribution, CancellationToken cancel = default); + + public Task NextNumber(float rangeStart, float rangeEnd, IDistribution distribution, CancellationToken cancel = default); public void StopProducer(); }