Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

GF2RandIter Class Reference

#include <gf2.h>

List of all members.


Detailed Description

Random field base element generator. This encapsulated class is a generator of random field base elements for the encapsulating field. It is required to contain constructors from a field object and two integers. The first integer being a cardinality of a set to draw the random elements from, and the second being a seed for the random number generator. It is also required to contain a copy constructor, a destructor, and an operator() which acts on a reference to a field base element. In this operator(), the random element is placed into the input field base element and also returned as a reference.


Public Types

typedef bool Element

Public Methods

 GF2RandIter (const GF2 &F, const integer &size=0, const integer &seed=0)
 GF2RandIter (const GF2RandIter &R)
 ~GF2RandIter ()
GF2RandIter & operator= (const GF2RandIter &R)
bool & random (bool &a) const
BitVector::reference random (BitVector::reference a) const
std::_Bit_reference random (std::_Bit_reference a) const
ElementAbstractrandom (ElementAbstract &a) const


Member Typedef Documentation

typedef bool Element
 


Constructor & Destructor Documentation

GF2RandIter const GF2   F,
const integer   size = 0,
const integer   seed = 0
[inline]
 

Constructor from field, sampling size, and seed. The random field element iterator works in the field F, is seeded by seed, and it returns any one element with probability no more than 1/min (size, F.cardinality (c)). A sampling size of zero means to sample from the entire field. A seed of zero means to use some arbitrary seed for the generator. Purely virtual.

Parameters:
F  LinBox field archetype object in which to do arithmetic
size  constant integer reference of sample size from which to sample (default = modulus of field)
seed  constant integer reference from which to seed random number generator (default = 0)

GF2RandIter const GF2RandIter &    R [inline]
 

Copy constructor. Constructs ModularRandIter object by copying the random field element generator. This is required to allow generator objects to be passed by value into functions.

Parameters:
R  ModularRandIter object.

~GF2RandIter   [inline]
 

Destructor. This destructs the random field element generator object.


Member Function Documentation

GF2RandIter& operator= const GF2RandIter &    R [inline]
 

Assignment operator. Assigns ModularRandIter object R to generator.

Parameters:
R  ModularRandIter object.

ElementAbstract& random ElementAbstract   a const [inline]
 

Random field element creator. This returns a random field element from the information supplied at the creation of the generator. Required by abstract base class.

Returns:
reference to random field element

std::_Bit_reference random std::_Bit_reference    a const [inline]
 

Random field element creator. This returns a random field element from the information supplied at the creation of the generator. Required by abstract base class.

Returns:
reference to random field element

BitVector::reference random BitVector::reference    a const [inline]
 

Random field element creator. This returns a random field element from the information supplied at the creation of the generator. Required by abstract base class.

Returns:
reference to random field element

bool& random bool &    a const [inline]
 

Random field element creator. This returns a random field element from the information supplied at the creation of the generator. Required by abstract base class.

Returns:
reference to random field element


Generated on Mon Jun 20 09:16:52 2005 for linbox by doxygen1.2.18