MTToolBox  0.2.10
Public Member Functions
MTToolBox::ReducibleGenerator< U, V > Class Template Referenceabstract

This class is an Abstract class for reducible generator. More...

#include <ReducibleGenerator.hpp>

Inheritance diagram for MTToolBox::ReducibleGenerator< U, V >:
MTToolBox::EquidistributionCalculatable< U, V > MTToolBox::RecursionSearchable< U, V > MTToolBox::AbstractGenerator< U >

Public Member Functions

virtual ~ReducibleGenerator ()
 Virtual destructor (always required) More...
 
virtual void setOneBit (int bitPos)=0
 set 1 for specified bit and clear all other bits in internal state. More...
 
virtual U getParityValue () const =0
 Virtual destructor (always required) Returs a value in the position for parity check. More...
 
virtual void setParityValue (U parity)=0
 Set a specified value in the position for parity check. More...
 
virtual int getMexp () const =0
 Get Mersenne Exponent which is a exponent part of certified minimum period. More...
 
- Public Member Functions inherited from MTToolBox::EquidistributionCalculatable< U, V >
virtual ~EquidistributionCalculatable ()
 Virtual destructor (always required) More...
 
virtual EquidistributionCalculatable< U, V > * clone () const =0
 Return copy of myself. More...
 
virtual U generate (int outBitLen)=0
 output outBitLen from MSB. More...
 
virtual void add (EquidistributionCalculatable< U, V > &that)=0
 Add internal state of GF(2)-linear pseudo random number generators. More...
 
virtual void setZero ()=0
 Set all zero to internal state. More...
 
virtual bool isZero () const =0
 Check if bits in internal state are all zero. More...
 
- Public Member Functions inherited from MTToolBox::RecursionSearchable< U, V >
virtual ~RecursionSearchable ()
 Virtual destructor (always required) More...
 
virtual void setUpParam (AbstractGenerator< V > &generator)=0
 Users should set parameters for their generator when this method is called. More...
 
virtual const std::string getHeaderString ()=0
 Returns header string of parameters. More...
 
virtual const std::string getParamString ()=0
 Returns string expression of parameters. More...
 
- Public Member Functions inherited from MTToolBox::AbstractGenerator< U >
virtual ~AbstractGenerator ()
 Virtual destructor (always required) More...
 
virtual U generate ()=0
 transit current internal state to next state and output a pseudo random number. More...
 
virtual void seed (U value)=0
 initialize internal state More...
 
virtual int bitSize () const =0
 Return bit size of internal state, i.e dimension of GF(2)-vector space. More...
 

Detailed Description

template<typename U, typename V = U>
class MTToolBox::ReducibleGenerator< U, V >

This class is an Abstract class for reducible generator.

Template Parameters
Uoutput type of the generator.
Voutput type of the generator used for parameter generating.

Constructor & Destructor Documentation

template<typename U, typename V = U>
virtual MTToolBox::ReducibleGenerator< U, V >::~ReducibleGenerator ( )
inlinevirtual

Virtual destructor (always required)

Member Function Documentation

template<typename U, typename V = U>
virtual int MTToolBox::ReducibleGenerator< U, V >::getMexp ( ) const
pure virtual

Get Mersenne Exponent which is a exponent part of certified minimum period.

Returns
mersenne exponent
template<typename U, typename V = U>
virtual U MTToolBox::ReducibleGenerator< U, V >::getParityValue ( ) const
pure virtual

Virtual destructor (always required) Returs a value in the position for parity check.

Returns
a value in the position for parity check
template<typename U, typename V = U>
virtual void MTToolBox::ReducibleGenerator< U, V >::setOneBit ( int  bitPos)
pure virtual

set 1 for specified bit and clear all other bits in internal state.

This method is used for calculating parity vector.

Parameters
[in]bitPosposition of bit set to be one
template<typename U, typename V = U>
virtual void MTToolBox::ReducibleGenerator< U, V >::setParityValue ( parity)
pure virtual

Set a specified value in the position for parity check.

Parameters
[in]paritya value to be set

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