Provided by: libbobcat-dev_6.04.00-1ubuntu3_amd64 bug

NAME

       FBB::IRandStream - Istream producing random numbers

SYNOPSIS

       #include <bobcat/irandstream>
       Linking option: -lbobcat

DESCRIPTION

       FBB::IRandStream  objects  may  be  used to extract random numbers in a given range from a
       stream.

NAMESPACE

       FBB
       All constructors, members, operators and manipulators, mentioned  in  this  man-page,  are
       defined in the namespace FBB.

INHERITS FROM

       std::istream,
       FBB::RandBuffer (private)

CONSTRUCTORS

       o      IRandStream(int max):
              This  FBB::IRandStream() constructor initializes the random generator.  The default
              seed (i.e., 1) for the srand(3) function is used, meaning that every new run of the
              program  will generate the same sequence of random values. Another constructor (see
              below) is provided when this is not considered appropriate. Random values between 1
              and max (inclusive) are returned.

       o      IRandStream(int min, int max):
              This  FBB::IRandStream() constructor initializes the random generator.  The default
              seed (i.e., 1) for the srand(3) function is used, meaning that every new run of the
              program  will generate the same sequence of random values. Another constructor (see
              below) is provided when this is not considered appropriate. Random  values  between
              min and max (inclusive) are returned.

       o      IRandStream(int min, int max, size_t seed):
              This  FBB::IRandStream()  constructor initializes the random generator. The seed is
              used to initialize the random number generator. To start the  random  generator  at
              some unpredictable point, time(0) could be used.  Random values between min and max
              (inclusive) are returned.

       Copy and move constructors (and assignment operators) are not available.

INHERITED MEMBERS

       Since the class uses public derivation from std::istream, all members of this class can be
       used.

EXAMPLE

       #include <iostream>
       #include <bobcat/irandstream>

       using namespace std;
       using namespace FBB;

       int main(int argc, char **argv)
       {
           if (argc == 1)
               cout << "\n"
                       "Showing one random value between 1 and 1000 (inclusive).\n"
                       "If you want more values specify the requested number of\n"
                       "values as the program’s first argument\n"
                       "On repeated calls the same numbers are generated\n\n";

           IRandStream in(1000);

           for (size_t count = argc == 1? 1 : stoul(argv[1]); count--; )
           {
               size_t random;
               in >> random;
               cout << random << endl;
           }
       }

FILES

       bobcat/irandstream - defines the class interface

SEE ALSO

       bobcat(7), randbuf(3bobcat), randommt(3bobcat)

BUGS

       None Reported.

BOBCAT PROJECT FILES

       o      https://fbb-git.gitlab.io/bobcat/: gitlab project page;

       o      bobcat_6.04.00-x.dsc: detached signature;

       o      bobcat_6.04.00-x.tar.gz: source archive;

       o      bobcat_6.04.00-x_i386.changes: change log;

       o      libbobcat1_6.04.00-x_*.deb: debian package containing the libraries;

       o      libbobcat1-dev_6.04.00-x_*.deb:  debian  package  containing the libraries, headers
              and manual pages;

BOBCAT

       Bobcat is an acronym of `Brokken’s Own Base Classes And Templates’.

COPYRIGHT

       This is free software, distributed under the terms  of  the  GNU  General  Public  License
       (GPL).

AUTHOR

       Frank B. Brokken (f.b.brokken@rug.nl).