19 lines
708 B
C#
19 lines
708 B
C#
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
using FastRng.Double.Distributions;
|
|
|
|
namespace FastRng.Double
|
|
{
|
|
public interface IRandom
|
|
{
|
|
public Task<double> GetUniform(CancellationToken cancel = default);
|
|
|
|
public Task<uint> NextNumber(uint rangeStart, uint rangeEnd, IDistribution distribution, CancellationToken cancel = default);
|
|
|
|
public Task<ulong> NextNumber(ulong rangeStart, ulong rangeEnd, IDistribution distribution, CancellationToken cancel = default);
|
|
|
|
public Task<float> NextNumber(float rangeStart, float rangeEnd, IDistribution distribution, CancellationToken cancel = default);
|
|
|
|
public void StopProducer();
|
|
}
|
|
} |