diff options
Diffstat (limited to 'src/common')
-rw-r--r-- | src/common/Utilities/Random.cpp | 8 | ||||
-rw-r--r-- | src/common/Utilities/Random.h | 3 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/common/Utilities/Random.cpp b/src/common/Utilities/Random.cpp index 40090caa15..babf235005 100644 --- a/src/common/Utilities/Random.cpp +++ b/src/common/Utilities/Random.cpp @@ -69,6 +69,14 @@ Milliseconds randtime(Milliseconds min, Milliseconds max) return min + Milliseconds(urand(0, diff)); } +Seconds randtime(Seconds min, Seconds max) +{ + long long diff = max.count() - min.count(); + ASSERT(diff >= 0); + ASSERT(diff <= (uint32) - 1); + return min + Seconds(urand(0, diff)); +} + uint32 rand32() { return GetRng()->RandomUInt32(); diff --git a/src/common/Utilities/Random.h b/src/common/Utilities/Random.h index 60d543bc4d..654b1817d2 100644 --- a/src/common/Utilities/Random.h +++ b/src/common/Utilities/Random.h @@ -38,6 +38,9 @@ AC_COMMON_API uint32 rand32(); /* Return a random time in the range min..max (up to millisecond precision). Only works for values where millisecond difference is a valid uint32. */ AC_COMMON_API Milliseconds randtime(Milliseconds min, Milliseconds max); +/* Return a random time in the range min..max (up to second precision). */ +AC_COMMON_API Seconds randtime(Seconds min, Seconds max); + /* Return a random number in the range min..max */ AC_COMMON_API float frand(float min, float max); |