Main Page   Packages   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

C:/temp/src/j2k/DataType/Sort/Random.hpp

Go to the documentation of this file.
00001 // Random.hpp - Interface of Randomize number
00002 //              generations and verification algorithm.
00003 
00004 #ifndef __J2K__RANDOM_HPP__
00005 #define __J2K__RANDOM_HPP__  // To avoid multiple declaration of a class
00006 
00007 #include <j2k/DataType/Sort/Const.hpp>
00008 
00009 class Random {
00010    public:
00011       Random();
00012       Random( const ULONG Size);
00013       Random( const ULONG Size, const ULONG Max );
00014       Random( const ULONG Size, const ULONG Max, const UINT value );
00015       Random( Random& s );
00016 
00017       virtual ~Random();
00018 
00019       void  init()       const;
00020       ULONG getMaximum() const;
00021       UINT  getSeed()    const;
00022       ULONG getSize()    const;
00023 
00024       void  Clear();
00025       void  Resize( const ULONG Size );
00026       void  Backup();
00027       void  Restore();
00028       void  Display();
00029       void  Randomize();
00030       void  Randomize( const uint value );
00031       void  Verify( const ULONG spread );
00032 
00033       void  feed();
00034       void  feedUp();
00035       void  feedDown();
00036       void  feedValue( Elem value );
00037             
00038       void  feed(      BOOL keepBackup );
00039       void  feedUp(    BOOL keepBackup );
00040       void  feedDown(  BOOL keepBackup );
00041       void  feedValue( BOOL keepBackup, Elem value );
00042 
00043       Elem  getRnd();
00044       Elem  getRnd( const ULONG Max );
00045       Elem* getArray();
00046 
00047    private:
00048       Elem*  array;
00049       Elem*  arrayBackup;
00050       ULONG  maximum;
00051       uint   seed;
00052       ULONG  size;
00053       BOOL   filled;
00054 };
00055 
00056 #endif

Generated on Sun Oct 14 18:46:18 2001 for Standard J2K Library by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001