Anklang-0.3.0.dev551+gad1415e2 anklang-0.3.0.dev551+gad1415e2
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
randomhash.hh File Reference
#include <ase/cxxaux.hh>

Go to the source code of this file.

Classes

struct  Ase::AlignedPOD< SIZE >
 Helper to provide memory for placement new AlignedPOD<SIZE> is aligned like max_align_t or like malloc()-ed memory and provides SIZE bytes. More...
 
class  Ase::Mwc256
 Marsaglia multiply-with-carry generator, period ca 2^255. More...
 
struct  Ase::SHA3_224
 SHA3_224 - 224 Bit digest generation. More...
 
struct  Ase::SHA3_256
 SHA3_256 - 256 Bit digest generation. More...
 
struct  Ase::SHA3_384
 SHA3_384 - 384 Bit digest generation. More...
 
struct  Ase::SHA3_512
 SHA3_512 - 512 Bit digest generation. More...
 
struct  Ase::SHAKE128
 SHAKE128 - 128 Bit extendable output digest generation. More...
 
struct  Ase::SHAKE256
 SHAKE256 - 256 Bit extendable output digest generation. More...
 
class  Ase::AutoSeeder
 AutoSeeder provides non-deterministic seeding entropy. More...
 
class  Ase::KeccakRng
 KeccakRng - A KeccakF1600 based pseudo-random number generator. More...
 
class  Ase::KeccakCryptoRng
 KeccakCryptoRng - A KeccakF1600 based cryptographic quality pseudo-random number generator. More...
 
class  Ase::KeccakGoodRng
 KeccakGoodRng - A KeccakF1600 based good quality pseudo-random number generator. More...
 
class  Ase::KeccakFastRng
 KeccakFastRng - A KeccakF1600 based fast pseudo-random number generator. More...
 
class  Ase::Pcg32Rng
 Pcg32Rng is a permutating linear congruential PRNG. More...
 

Namespaces

namespace  Ase
 The Anklang C++ API namespace.
 

Typedefs

using Ase::FastRng = Mwc256
 

Functions

uint64_t Ase::random_nonce ()
 Provide a unique 64 bit identifier that is not 0, see also random_int64().
 
uint64_t Ase::random_int64 ()
 Generate a non-deterministic, uniformly distributed 64 bit pseudo-random number.
 
int64_t Ase::random_irange (int64_t begin, int64_t end)
 Generate uniformly distributed pseudo-random integer within range.
 
double Ase::random_float ()
 Generate uniformly distributed pseudo-random floating point number.
 
double Ase::random_frange (double begin, double end)
 Generate uniformly distributed pseudo-random floating point number within a range.
 
void Ase::random_secret (uint64_t *secret_var)
 Generate a secret non-zero nonce in secret_var, unless it has already been assigned.
 
void Ase::sha3_224_hash (const void *data, size_t data_length, uint8_t hashvalue[28])
 Calculate 224 bit SHA3 digest from data, see also class SHA3_224.
 
void Ase::sha3_256_hash (const void *data, size_t data_length, uint8_t hashvalue[32])
 Calculate 256 bit SHA3 digest from data, see also class SHA3_256.
 
void Ase::sha3_384_hash (const void *data, size_t data_length, uint8_t hashvalue[48])
 Calculate 384 bit SHA3 digest from data, see also class SHA3_384.
 
void Ase::sha3_512_hash (const void *data, size_t data_length, uint8_t hashvalue[64])
 Calculate 512 bit SHA3 digest from data, see also class SHA3_512.
 
void Ase::shake128_hash (const void *data, size_t data_length, uint8_t *hashvalues, size_t n)
 Calculate SHA3 extendable output digest for 128 bit security strength, see also class SHAKE128.
 
void Ase::shake256_hash (const void *data, size_t data_length, uint8_t *hashvalues, size_t n)
 Calculate SHA3 extendable output digest for 256 bit security strength, see also class SHAKE256.
 

Class Documentation

◆ Ase::AlignedPOD

struct Ase::AlignedPOD
template<size_t SIZE>
struct Ase::AlignedPOD< SIZE >

Helper to provide memory for placement new AlignedPOD<SIZE> is aligned like max_align_t or like malloc()-ed memory and provides SIZE bytes.

Idiomatic use is:

static AlignedPOD<sizeof (std::string)> pod_mem;
std::string *str = new (&pod_mem) std::string();
Helper to provide memory for placement new AlignedPOD<SIZE> is aligned like max_align_t or like mallo...
Definition randomhash.hh:19

Definition at line 19 of file randomhash.hh.

Class Members
type mem