OTPNitro
 All Classes Files Functions Variables Macros
Public Member Functions | List of all members
Rand Class Reference

This class provides all secure random rutines. More...

#include <rand.h>

Public Member Functions

 Rand ()
 The Rand constructor generate a new random seed. More...
 
unsigned long getTicks ()
 This function get the tick number from the CPU. More...
 
void setSeed (float)
 Random seed setter. More...
 
float getSeed ()
 Random sed getter. More...
 
float genSeed ()
 
char getChar ()
 
char getLetter ()
 Get a random [A-Z] char. More...
 
int getNumber (int)
 Get a random number. More...
 

Detailed Description

This class provides all secure random rutines.

Constructor & Destructor Documentation

Rand::Rand ( )

The Rand constructor generate a new random seed.

Returns
Rand object

Member Function Documentation

float Rand::genSeed ( )
Parameters
Generatea new seed using some black magic
Returns
(float)seed

seed = (float)( (usecs.tv_usec + getpid()) ^ (int(Rand::getTicks()) << 16) / 10000 );

char Rand::getChar ( )
Parameters
Geta random char
Returns
(char)rnd
char Rand::getLetter ( )

Get a random [A-Z] char.

Returns
(char)rnd
int Rand::getNumber ( int  a)

Get a random number.

Parameters
anumber len
Returns
(int)rnd
float Rand::getSeed ( )

Random sed getter.

Returns
(float)seed
unsigned long Rand::getTicks ( )

This function get the tick number from the CPU.

Returns
(ulong)tsc

In ix86 and amd64 uses RDTSC to get the low ticks value.
In ARMv6 and ARMv7 currently uses a gettimeofday()

void Rand::setSeed ( float  a)

Random seed setter.

Parameters
aThe new seed

The documentation for this class was generated from the following files: