| 
| using  | vsmc::AES128 = AES128Engine< std::uint32_t > | 
|   | AES-128 RNG engine with 32-bits integers output and default blocks.  More...
  | 
|   | 
| using  | vsmc::AES128_1x32 = AES128Engine< std::uint32_t, 1 > | 
|   | AES-128 RNG engine with 32-bits integers output and 1 block.  More...
  | 
|   | 
| using  | vsmc::AES128_1x64 = AES128Engine< std::uint64_t, 1 > | 
|   | AES-128 RNG engine with 64-bits integers output and 1 block.  More...
  | 
|   | 
| using  | vsmc::AES128_2x32 = AES128Engine< std::uint32_t, 2 > | 
|   | AES-128 RNG engine with 32-bits integers output and 2 blocks.  More...
  | 
|   | 
| using  | vsmc::AES128_2x64 = AES128Engine< std::uint64_t, 2 > | 
|   | AES-128 RNG engine with 64-bits integers output and 2 blocks.  More...
  | 
|   | 
| using  | vsmc::AES128_4x32 = AES128Engine< std::uint32_t, 4 > | 
|   | AES-128 RNG engine with 32-bits integers output and 4 blocks.  More...
  | 
|   | 
| using  | vsmc::AES128_4x64 = AES128Engine< std::uint64_t, 4 > | 
|   | AES-128 RNG engine with 64-bits integers output and 4 blocks.  More...
  | 
|   | 
| using  | vsmc::AES128_64 = AES128Engine< std::uint64_t > | 
|   | AES-128 RNG engine with 64-bits integers output and default blocks.  More...
  | 
|   | 
| using  | vsmc::AES128_8x32 = AES128Engine< std::uint32_t, 8 > | 
|   | AES-128 RNG engine with 32-bits integers output and 8 blocks.  More...
  | 
|   | 
| using  | vsmc::AES128_8x64 = AES128Engine< std::uint64_t, 8 > | 
|   | AES-128 RNG engine with 64-bits integers output and 8 blocks.  More...
  | 
|   | 
| template<typename ResultType , std::size_t Blocks = 4>  | 
| using  | vsmc::AES128Engine = AESNIEngine< ResultType, AES128KeySeq< ResultType, 10 >, 10, Blocks > | 
|   | AES-128 RNG engine.  More...
  | 
|   | 
| template<typename ResultType , std::size_t Rounds>  | 
| using  | vsmc::AES128KeySeq = internal::AESKeySeq< ResultType, Rounds, internal::AES128KeySeqGenerator< ResultType >> | 
|   | AES128Engine key sequence generator.  More...
  | 
|   | 
| using  | vsmc::AES192 = AES192Engine< std::uint32_t > | 
|   | AES-192 RNG engine with 32-bits integers output and default blocks.  More...
  | 
|   | 
| using  | vsmc::AES192_1x32 = AES192Engine< std::uint32_t, 1 > | 
|   | AES-192 RNG engine with 32-bits integers output and 1 block.  More...
  | 
|   | 
| using  | vsmc::AES192_1x64 = AES192Engine< std::uint64_t, 1 > | 
|   | AES-192 RNG engine with 64-bits integers output and 1 block.  More...
  | 
|   | 
| using  | vsmc::AES192_2x32 = AES192Engine< std::uint32_t, 2 > | 
|   | AES-192 RNG engine with 32-bits integers output and 2 blocks.  More...
  | 
|   | 
| using  | vsmc::AES192_2x64 = AES192Engine< std::uint64_t, 2 > | 
|   | AES-192 RNG engine with 64-bits integers output and 2 blocks.  More...
  | 
|   | 
| using  | vsmc::AES192_4x32 = AES192Engine< std::uint32_t, 4 > | 
|   | AES-192 RNG engine with 32-bits integers output and 4 blocks.  More...
  | 
|   | 
| using  | vsmc::AES192_4x64 = AES192Engine< std::uint64_t, 4 > | 
|   | AES-192 RNG engine with 64-bits integers output and 4 blocks.  More...
  | 
|   | 
| using  | vsmc::AES192_64 = AES192Engine< std::uint64_t > | 
|   | AES-192 RNG engine with 64-bits integers output and default blocks.  More...
  | 
|   | 
| using  | vsmc::AES192_8x32 = AES192Engine< std::uint32_t, 8 > | 
|   | AES-192 RNG engine with 32-bits integers output and 8 blocks.  More...
  | 
|   | 
| using  | vsmc::AES192_8x64 = AES192Engine< std::uint64_t, 8 > | 
|   | AES-192 RNG engine with 64-bits integers output and 8 blocks.  More...
  | 
|   | 
| template<typename ResultType , std::size_t Blocks = 4>  | 
| using  | vsmc::AES192Engine = AESNIEngine< ResultType, AES192KeySeq< ResultType, 12 >, 12, Blocks > | 
|   | AES-192 RNG engine.  More...
  | 
|   | 
| template<typename ResultType , std::size_t Rounds>  | 
| using  | vsmc::AES192KeySeq = internal::AESKeySeq< ResultType, Rounds, internal::AES192KeySeqGenerator< ResultType >> | 
|   | AES192Engine key sequence generator.  More...
  | 
|   | 
| using  | vsmc::AES256 = AES256Engine< std::uint32_t > | 
|   | AES-256 RNG engine with 32-bits integers output and default blocks.  More...
  | 
|   | 
| using  | vsmc::AES256_1x32 = AES256Engine< std::uint32_t, 1 > | 
|   | AES-256 RNG engine with 32-bits integers output and 1 block.  More...
  | 
|   | 
| using  | vsmc::AES256_1x64 = AES256Engine< std::uint64_t, 1 > | 
|   | AES-256 RNG engine with 64-bits integers output and 1 block.  More...
  | 
|   | 
| using  | vsmc::AES256_2x32 = AES256Engine< std::uint32_t, 2 > | 
|   | AES-256 RNG engine with 32-bits integers output and 2 blocks.  More...
  | 
|   | 
| using  | vsmc::AES256_2x64 = AES256Engine< std::uint64_t, 2 > | 
|   | AES-256 RNG engine with 64-bits integers output and 2 blocks.  More...
  | 
|   | 
| using  | vsmc::AES256_4x32 = AES256Engine< std::uint32_t, 4 > | 
|   | AES-256 RNG engine with 32-bits integers output and 4 blocks.  More...
  | 
|   | 
| using  | vsmc::AES256_4x64 = AES256Engine< std::uint64_t, 4 > | 
|   | AES-256 RNG engine with 64-bits integers output and 4 blocks.  More...
  | 
|   | 
| using  | vsmc::AES256_64 = AES256Engine< std::uint64_t > | 
|   | AES-256 RNG engine with 64-bits integers output and default blocks.  More...
  | 
|   | 
| using  | vsmc::AES256_8x32 = AES256Engine< std::uint32_t, 8 > | 
|   | AES-256 RNG engine with 32-bits integers output and 8 blocks.  More...
  | 
|   | 
| using  | vsmc::AES256_8x64 = AES256Engine< std::uint64_t, 8 > | 
|   | AES-256 RNG engine with 64-bits integers output and 8 blocks.  More...
  | 
|   | 
| template<typename ResultType , std::size_t Blocks = 4>  | 
| using  | vsmc::AES256Engine = AESNIEngine< ResultType, AES256KeySeq< ResultType, 14 >, 14, Blocks > | 
|   | AES-256 RNG engine.  More...
  | 
|   | 
| template<typename ResultType , std::size_t Rounds>  | 
| using  | vsmc::AES256KeySeq = internal::AESKeySeq< ResultType, Rounds, internal::AES256KeySeqGenerator< ResultType >> | 
|   | AES256Engine key sequence generator.  More...
  | 
|   | 
| template<typename ResultType , typename KeySeqType , std::size_t Rounds, std::size_t Blocks>  | 
| using  | vsmc::AESNIEngine = CounterEngine< AESNIGenerator< ResultType, KeySeqType, Rounds, Blocks >> | 
|   | RNG engine using AES-NI instructions.  More...
  | 
|   | 
| using  | vsmc::ARS = ARSEngine< std::uint32_t > | 
|   | ARS RNG engine with 32-bits integers output, default blocks and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_1x32 = ARSEngine< std::uint32_t, 5, 1 > | 
|   | ARS RNG engine with 32-bits integers output, 1 block and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_1x64 = ARSEngine< std::uint64_t, 5, 1 > | 
|   | ARS RNG engine with 64-bits integers output, 1 block and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_2x32 = ARSEngine< std::uint32_t, 5, 2 > | 
|   | ARS RNG engine with 32-bits integers output, 2 blocks and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_2x64 = ARSEngine< std::uint64_t, 5, 2 > | 
|   | ARS RNG engine with 64-bits integers output, 2 blocks and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_4x32 = ARSEngine< std::uint32_t, 5, 4 > | 
|   | ARS RNG engine with 32-bits integers output, 4 blocks and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_4x64 = ARSEngine< std::uint64_t, 5, 4 > | 
|   | ARS RNG engine with 64-bits integers output, 4 blocks and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_64 = ARSEngine< std::uint64_t > | 
|   | ARS RNG engine with 64-bits integers output, default blocks and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_8x32 = ARSEngine< std::uint32_t, 5, 8 > | 
|   | ARS RNG engine with 32-bits integers output, 8 blocks and default rounds.  More...
  | 
|   | 
| using  | vsmc::ARS_8x64 = ARSEngine< std::uint64_t, 5, 8 > | 
|   | ARS RNG engine with 64-bits integers output, 8 blocks and default rounds.  More...
  | 
|   | 
| template<typename ResultType , std::size_t Rounds = 5, std::size_t Blocks = 4>  | 
| using  | vsmc::ARSEngine = AESNIEngine< ResultType, ARSKeySeq< ResultType >, Rounds, Blocks > | 
|   | ARS RNG engine.  More...
  | 
|   | 
Random number generating using AES-NI.