| Index: include/utils/SkRandom.h
|
| diff --git a/include/utils/SkRandom.h b/include/utils/SkRandom.h
|
| index eeaa701c6ec64bf209e11bd3c5aecbd09c3ea570..9191ec35c14e39b4a7882024a4bf22e4c06975b4 100644
|
| --- a/include/utils/SkRandom.h
|
| +++ b/include/utils/SkRandom.h
|
| @@ -10,9 +10,12 @@
|
| #ifndef SkRandom_DEFINED
|
| #define SkRandom_DEFINED
|
|
|
| -#include "Sk64.h"
|
| #include "SkScalar.h"
|
|
|
| +#ifdef SK_SUPPORT_LEGACY_SK64
|
| + #include "Sk64.h"
|
| +#endif
|
| +
|
| /** \class SkLCGRandom
|
|
|
| Utility class that implements pseudo random 32bit numbers using a fast
|
| @@ -123,13 +126,21 @@ public:
|
| return this->nextUScalar1() <= fractionTrue;
|
| }
|
|
|
| - /** Return the next pseudo random number as a signed 64bit value.
|
| - */
|
| + /**
|
| + * Return the next pseudo random number as a signed 64bit value.
|
| + */
|
| + int64_t next64() {
|
| + int64_t hi = this->nextS();
|
| + return (hi << 32) | this->nextU();
|
| + }
|
| +
|
| +#ifdef SK_SUPPORT_LEGACY_SK64
|
| + SK_ATTR_DEPRECATED("use next64()")
|
| void next64(Sk64* a) {
|
| SkASSERT(a);
|
| a->set(this->nextS(), this->nextU());
|
| }
|
| -
|
| +#endif
|
| /**
|
| * Return the current seed. This allows the caller to later reset to the
|
| * same seed (using setSeed) so it can generate the same sequence.
|
| @@ -276,12 +287,21 @@ public:
|
| return this->nextUScalar1() <= fractionTrue;
|
| }
|
|
|
| - /** Return the next pseudo random number as a signed 64bit value.
|
| + /**
|
| + * Return the next pseudo random number as a signed 64bit value.
|
| */
|
| + int64_t next64() {
|
| + int64_t hi = this->nextS();
|
| + return (hi << 32) | this->nextU();
|
| + }
|
| +
|
| +#ifdef SK_SUPPORT_LEGACY_SK64
|
| + SK_ATTR_DEPRECATED("use next64()")
|
| void next64(Sk64* a) {
|
| SkASSERT(a);
|
| a->set(this->nextS(), this->nextU());
|
| }
|
| +#endif
|
|
|
| /** Reset the random object.
|
| */
|
|
|