diff options
author | lloyd <[email protected]> | 2008-10-26 03:07:18 +0000 |
---|---|---|
committer | lloyd <[email protected]> | 2008-10-26 03:07:18 +0000 |
commit | a8ee54d459a42d98fdfe1e9ff4f0c011c2f41e10 (patch) | |
tree | 576d871ed243508e5458456d12ea99d240e8339c /doc/examples/make_prime.cpp | |
parent | b1344477a80c7410da9ce05dd3343c04d24f8095 (diff) |
Move rng.{cpp,h} from core to rng/ topdir
Add a new class AutoSeeded_RNG that is a RandomNumberGenerator that wraps
up the logic formerly in RandomNumberGenerator::make_rng. make_rng in
fact now just returns a new AutoSeeded_RNG object.
AutoSeeded_RNG is a bit more convenient because
- No need to use auto_ptr
- No need to dereference (same syntax everywhere - it's an underestimated
advantage imo)
Also move the code from timer/timer_base to timer/
Diffstat (limited to 'doc/examples/make_prime.cpp')
-rw-r--r-- | doc/examples/make_prime.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/doc/examples/make_prime.cpp b/doc/examples/make_prime.cpp index 4d82907f9..4135bd197 100644 --- a/doc/examples/make_prime.cpp +++ b/doc/examples/make_prime.cpp @@ -1,4 +1,5 @@ #include <botan/numthry.h> +#include <botan/auto_rng.h> using namespace Botan; @@ -9,7 +10,7 @@ using namespace Botan; int main() { - RandomNumberGenerator* rng = RandomNumberGenerator::make_rng(); + AutoSeeded_RNG rng; std::set<BigInt> primes; @@ -23,14 +24,14 @@ int main() u32bit bits = 18; - if(rng->next_byte() % 128 == 0) - bits -= rng->next_byte() % (bits-2); + if(rng.next_byte() % 128 == 0) + bits -= rng.next_byte() % (bits-2); bit_count[bits]++; //std::cout << "random_prime(" << bits << ")\n"; - BigInt p = random_prime(*rng, bits); + BigInt p = random_prime(rng, bits); if(p.bits() != bits) { @@ -39,7 +40,7 @@ int main() return 1; } - primes.insert(random_prime(*rng, bits)); + primes.insert(random_prime(rng, bits)); if(primes.size() != start_cnt) std::cout << primes.size() << "\n"; |