Index: src/IceRNG.h |
diff --git a/src/IceRNG.h b/src/IceRNG.h |
index 423aee00e233110a5aeb783ffcda8ba07661781a..2e17c6364d2c4b7466f3f07fc1c55dc9e256fc47 100644 |
--- a/src/IceRNG.h |
+++ b/src/IceRNG.h |
@@ -28,6 +28,18 @@ private: |
uint64_t State; |
}; |
+// This class adds additional random number generator utilities. The |
+// reason for the wrapper class is that we want to keep the |
+// RandomNumberGenerator interface identical to LLVM's. |
+class RandomNumberGeneratorWrapper { |
Jim Stichnoth
2014/08/14 01:20:09
Disable default copy ctor etc.
wala
2014/08/14 23:29:49
Done.
|
+public: |
+ uint64_t next(uint64_t Max) { return RNG.next(Max); } |
+ bool getTrueWithProbability(float Probability); |
+ RandomNumberGeneratorWrapper(RandomNumberGenerator &RNG) : RNG(RNG) {} |
+private: |
+ RandomNumberGenerator &RNG; |
+}; |
+ |
} // end of namespace Ice |
#endif // SUBZERO_SRC_ICERNG_H |