linbox
MaskedPrimeIterator< Trait > Class Template Reference

Masked Prime Iterator. More...

#include <random-prime.h>

+ Inheritance diagram for MaskedPrimeIterator< Trait >:

Public Types

typedef MaskedPrimeIterator< Trait > Self_t
 
typedef PrimeIterator< Trait > Father_t
 
typedef integer Prime_Type
 
typedef UniqueSamplingTrait< IteratorCategories::HeuristicTagUniqueSamplingTag
 whether a prime can be picked more than once
 
typedef IteratorCategories::HeuristicTag IteratorTag
 

Public Member Functions

void generatePrime ()
 
Self_toperator++ ()
 
 MaskedPrimeIterator (uint32_t mask, uint32_t max, uint64_t bits=23, uint64_t seed=0)
 
const uint32_t getMask () const
 
const uint32_t getShift () const
 
void generatePrime ()
 
void generatePrime ()
 
void generatePrime ()
 
const Prime_Typeoperator* () const
 get the random prime.
 
const Prime_Typeoperator* () const
 get the random prime.
 
void setBits (uint64_t bits)
 Sets the bit size.
 
void setBits (uint64_t bits)
 Sets the bit size.
 
uint64_t getBits () const
 
uint64_t getBits () const
 

Static Public Member Functions

static void setSeed (uint64_t ul)
 Sets the seed.
 
static void setSeed (uint64_t ul)
 Sets the seed.
 

Protected Attributes

uint64_t _bits
 common lenght of all primes
 
uint64_t _bits
 common lenght of all primes
 
integer _prime
 the generated prime.
 
integer _prime
 the generated prime.
 
Givaro::IntPrimeDom _IPD
 empty struct dealing with primality.
 
Givaro::IntPrimeDom _IPD
 empty struct dealing with primality.
 

Detailed Description

template<class Trait = IteratorCategories::HeuristicTag>
class LinBox::MaskedPrimeIterator< Trait >

Masked Prime Iterator.

Generates prime of specified length with fixed lower bits

Member Typedef Documentation

◆ Self_t

template<class Trait = IteratorCategories::HeuristicTag>
typedef MaskedPrimeIterator<Trait> Self_t

◆ Father_t

template<class Trait = IteratorCategories::HeuristicTag>
typedef PrimeIterator<Trait> Father_t

◆ Prime_Type

typedef integer Prime_Type
inherited

◆ UniqueSamplingTag

whether a prime can be picked more than once

◆ IteratorTag

Constructor & Destructor Documentation

◆ MaskedPrimeIterator()

template<class Trait = IteratorCategories::HeuristicTag>
MaskedPrimeIterator ( uint32_t mask,
uint32_t max,
uint64_t bits = 23,
uint64_t seed = 0 )
inline

Member Function Documentation

◆ generatePrime() [1/4]

template<class Trait = IteratorCategories::HeuristicTag>
void generatePrime ( )
virtual

◆ operator++()

template<class Trait = IteratorCategories::HeuristicTag>
Self_t & operator++ ( )
inline

◆ getMask()

template<class Trait = IteratorCategories::HeuristicTag>
const uint32_t getMask ( ) const
inline

◆ getShift()

template<class Trait = IteratorCategories::HeuristicTag>
const uint32_t getShift ( ) const
inline

◆ generatePrime() [2/4]

void generatePrime ( )
inlinevirtual

◆ generatePrime() [3/4]

void generatePrime ( )
inlinevirtual

◆ generatePrime() [4/4]

void generatePrime ( )
inlinevirtual

◆ operator*() [1/2]

const Prime_Type & operator* ( ) const
inlineinherited

get the random prime.

returns the actual prime.

Warning
a new prime is not generated.

◆ operator*() [2/2]

const Prime_Type & operator* ( ) const
inlineinherited

get the random prime.

returns the actual prime.

Warning
a new prime is not generated.

◆ setSeed() [1/2]

static void setSeed ( uint64_t ul)
inlinestaticinherited

Sets the seed.

Set the random seed to be ul.

Parameters
ulthe new seed.

◆ setSeed() [2/2]

static void setSeed ( uint64_t ul)
inlinestaticinherited

Sets the seed.

Set the random seed to be ul.

Parameters
ulthe new seed.

◆ setBits() [1/2]

void setBits ( uint64_t bits)
inlineinherited

Sets the bit size.

Parameters
bitsthe new bit size.

◆ setBits() [2/2]

void setBits ( uint64_t bits)
inlineinherited

Sets the bit size.

Parameters
bitsthe new bit size.

◆ getBits() [1/2]

uint64_t getBits ( ) const
inlineinherited

◆ getBits() [2/2]

uint64_t getBits ( ) const
inlineinherited

Field Documentation

◆ _bits [1/2]

uint64_t _bits
protectedinherited

common lenght of all primes

◆ _bits [2/2]

uint64_t _bits
protectedinherited

common lenght of all primes

◆ _prime [1/2]

integer _prime
protectedinherited

the generated prime.

◆ _prime [2/2]

integer _prime
protectedinherited

the generated prime.

◆ _IPD [1/2]

Givaro::IntPrimeDom _IPD
protectedinherited

empty struct dealing with primality.

◆ _IPD [2/2]

Givaro::IntPrimeDom _IPD
protectedinherited

empty struct dealing with primality.


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