Implementa funcionalidades de um Gerador de Números Aleatórios. Esta classe possui apenas métodos estáticos. Antes de gerar dados randômicos deve-se semear o GNA com dados a partir de qualquer fonte. Esta pode ser um arquivo, bytes randômicos ou dados fornecidos por um hardware (através de uma engine).
More...
#include <Random.h>
Implementa funcionalidades de um Gerador de Números Aleatórios. Esta classe possui apenas métodos estáticos. Antes de gerar dados randômicos deve-se semear o GNA com dados a partir de qualquer fonte. Esta pode ser um arquivo, bytes randômicos ou dados fornecidos por um hardware (através de uma engine).
◆ bytes()
Gera bytes randômicos.
- Parameters
-
nbytes | quantidade de bytes a ser gerada. |
- Returns
- objeto ByteArray que representa bytes randômicos.
- Exceptions
-
RandomException | caso função de geração de bytes não esteja implementada ou caso o gerador não tenha sido semeado. |
◆ cleanSeed()
void Random::cleanSeed |
( |
| ) |
|
|
static |
Limpa recursos utilizados pelo Gerador de Números Aleatórios.
◆ pseudoBytes()
Gera bytes pseudo-randômicos.
- Parameters
-
nbytes | quantidade de bytes a ser gerada. |
- Returns
- objeto ByteArray que representa bytes pseudo-randômicos.
- Exceptions
-
RandomException | caso função de geração de bytes não esteja implementada ou caso o gerador não tenha sido semeado. |
◆ seedData()
Semeia o Gerador de Número Aleatórios com semente.
- Parameters
-
data | dados aleatórios utilizados como semente. |
◆ seedFile()
void Random::seedFile |
( |
std::string & |
filename, |
|
|
int |
nbytes |
|
) |
| |
throw | ( | RandomException |
| ) | | |
|
static |
Semeia o Gerador de Número Aleatórios com semente a partir de um arquivo.
- Parameters
-
filename | caminho para arquivo. |
nbytes | número máximo de bytes a ser lido do conteúdo do arquivo. |
◆ status()
Verifica se o Gerador de Números Aleatório foi semeado com dados suficientes. return true se o GNA foi semeado com sucesso, false caso contrário.
The documentation for this class was generated from the following files: