From 18daf97e6737ddca307fdb05f7ba837539251588 Mon Sep 17 00:00:00 2001 From: Jeffrey Walton Date: Sun, 11 Sep 2016 05:41:32 -0400 Subject: [PATCH] Updated documentation --- mersenne.h | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/mersenne.h b/mersenne.h index f63b233e2..ca2362b87 100644 --- a/mersenne.h +++ b/mersenne.h @@ -21,10 +21,11 @@ NAMESPACE_BEGIN(CryptoPP) //! \tparam M Period parameter //! \tparam N Size of the state vector //! \tparam F Multiplier constant -//! \tparam S Default seed +//! \tparam S Initial seed //! \details Provides the MersenneTwister implementation. The class is a header-only implementation. //! \warning MersenneTwister is suitable for simulations, where uniformaly distrubuted numbers are //! required quickly. It should not be used for cryptographic purposes. +//! \sa MT19937, MT19937ar //! \since Crypto++ 5.6.3 template class MersenneTwister : public RandomNumberGenerator @@ -180,19 +181,30 @@ class MersenneTwister : public RandomNumberGenerator unsigned int m_idx; }; +//! \class MT19937 //! \brief Original MT19937 generator provided in the ACM paper. //! \details MT19937 uses 4537 as default initial seed. -//! \sa Mersenne twister: a 623-dimensionally -//! equidistributed uniform pseudo-random number generator +//! \sa MT19937ar, Mersenne twister: +//! a 623-dimensionally equidistributed uniform pseudo-random number generator //! \since Crypto++ 5.6.3 +#if CRYPTOPP_DOXYGEN_PROCESSING +class MT19937 : public MersenneTwister<0x9908B0DF /*2567483615*/, 397, 624, 0x10DCD /*69069*/, 4537> {}; +#else typedef MersenneTwister<0x9908B0DF /*2567483615*/, 397, 624, 0x10DCD /*69069*/, 4537> MT19937; +#endif +//! \class MT19937ar //! \brief Updated MT19937 generator adapted to provide an array for initialization. //! \details MT19937 uses 5489 as default initial seed. Use this generator when interoperating with C++11's //! mt19937 class. -//! \sa Mersenne Twister with improved initialization +//! \sa MT19937, Mersenne Twister +//! with improved initialization //! \since Crypto++ 5.6.3 +#if CRYPTOPP_DOXYGEN_PROCESSING +class MT19937ar : public MersenneTwister<0x9908B0DF /*2567483615*/, 397, 624, 0x6C078965 /*1812433253*/, 5489> {}; +#else typedef MersenneTwister<0x9908B0DF /*2567483615*/, 397, 624, 0x6C078965 /*1812433253*/, 5489> MT19937ar; +#endif NAMESPACE_END