diff options
author | Jelle Meeus <sogladev@gmail.com> | 2025-06-20 23:18:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-06-20 23:18:05 +0200 |
commit | 7fc8b14e3eb4eaf2acec0f27cecd4a7e44015f09 (patch) | |
tree | b57941a15df7277d563a04e04863ce9906a5a6a3 /src/common | |
parent | e21dd803812c6ba324b70e3b3fde8d42f0656fdd (diff) |
feat(Core/Utilities): add `Seconds` overload for `randtime` (#22337)
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); |