This class is an abstract class. It supplies the interface for random number generators. More...
#include <random_number_generator.h>
Public Member Functions | |
virtual | ~RandomNumberGenerator () |
The destructor. More... | |
virtual std::string | GetName ()=0 |
Returns a string representation of this object. More... | |
virtual void | LoadData (std::ifstream *input_stream)=0 |
Loads data to reset the state of the random number generator to the state which was stored. More... | |
virtual long long | RandomLongLong ()=0 |
Creates a random long long value. More... | |
virtual mpf_t * | RandomMpft ()=0 |
Creates a random mpf_t value in the interval [0,1]. More... | |
virtual void | StoreData (std::ofstream *output_stream)=0 |
Stores the current state of this random number generator, such that it can completely restore the current state with this data. More... | |
Detailed Description
This class is an abstract class. It supplies the interface for random number generators.
Constructor & Destructor Documentation
|
virtual |
The destructor.
Member Function Documentation
|
pure virtual |
Returns a string representation of this object.
- Returns
- The name of the object.
Implemented in arbitraryprecisioncalculation::IntenseLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::FastLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::IntenseM2P63LinearCongruenceRandomNumberGenerator, and arbitraryprecisioncalculation::FastM2P63LinearCongruenceRandomNumberGenerator.
|
pure virtual |
Loads data to reset the state of the random number generator to the state which was stored.
- Parameters
-
input_stream The stream which contains the data about the state of the random number generator.
Implemented in arbitraryprecisioncalculation::IntenseLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::FastLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::IntenseM2P63LinearCongruenceRandomNumberGenerator, and arbitraryprecisioncalculation::FastM2P63LinearCongruenceRandomNumberGenerator.
|
pure virtual |
Creates a random long long value.
- Returns
- The random value.
Implemented in arbitraryprecisioncalculation::IntenseLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::FastLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::IntenseM2P63LinearCongruenceRandomNumberGenerator, and arbitraryprecisioncalculation::FastM2P63LinearCongruenceRandomNumberGenerator.
|
pure virtual |
Creates a random mpf_t value in the interval [0,1].
- Returns
- The random value.
Implemented in arbitraryprecisioncalculation::IntenseLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::FastLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::IntenseM2P63LinearCongruenceRandomNumberGenerator, and arbitraryprecisioncalculation::FastM2P63LinearCongruenceRandomNumberGenerator.
|
pure virtual |
Stores the current state of this random number generator, such that it can completely restore the current state with this data.
- Parameters
-
output_stream The output stream where the state should be stored.
Implemented in arbitraryprecisioncalculation::IntenseLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::FastLinearCongruenceRandomNumberGenerator, arbitraryprecisioncalculation::IntenseM2P63LinearCongruenceRandomNumberGenerator, and arbitraryprecisioncalculation::FastM2P63LinearCongruenceRandomNumberGenerator.
The documentation for this class was generated from the following file:
- src/arbitrary_precision_calculation/random_number_generator.h