Provided by: libbobcat-dev_3.19.01-1ubuntu1_amd64 bug

NAME

       FBB::RandBuffer - std::streambuf generating random numbers

SYNOPSIS

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

DESCRIPTION

       FBB:RandBuffer  objects  may  be used as a std::streambuf of std::istream objects to allow
       the extraction of random numbers from the stream.

NAMESPACE

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

INHERITS FROM

       std::streambuf

CONSTRUCTOR

       o      Randbuffer(int min, int max, size_t seed = 1):
              This Randbuffer() constructor initializes the random generator. The seed is used to
              initialze the random number generator.Random values between min and max (inclusive)
              are returned.

VIRTUAL MEMBERS

       o      int underflow():
              This  function  is called by std::istream objects using Randbuffer. It produces the
              next available random number, separating the random numbers by  one  blanks  space.
              Random  values between min and max (inclusive) are returned (see the description of
              the constructor).

INHERITED MEMBERS

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

EXAMPLE

       #include <iostream>
       #include <istream>

       #include <bobcat/randbuffer>
       #include <bobcat/a2x>

       using namespace std;
       using namespace FBB;

       int main(int argc, char **argv)
       {
           if (argc == 1)
           {
               cout << "expect: nruns min max seed\n";
               return 1;
           }

           Randbuffer rb(A2x(argv[2]), A2x(argv[3]), A2x(argv[4]).to<size_t>());

           istream istr(&rb);

           for (int idx = A2x(argv[1]); idx--; )
           {
               int c;
               if (!(istr >> c))
               {
                   cout << "extraction failed\n";
                   break;
               }
               cout << "next: " << c << endl;
           }

           int count = 0;
           while (istr.unget())
               count++;

           cout << "number of successful unget()-calls: " << count << endl;
           istr.clear();
           istr >> count;
           cout << "and read: " << count << endl;

           return 0;
       }

FILES

       bobcat/randbuffer - defines the class interface

SEE ALSO

       bobcat(7), irandstream(3bobcat), rand(3), srand(3), std::streambuf

BUGS

       None Reported.

DISTRIBUTION FILES

       o      bobcat_3.19.01-x.dsc: detached signature;

       o      bobcat_3.19.01-x.tar.gz: source archive;

       o      bobcat_3.19.01-x_i386.changes: change log;

       o      libbobcat1_3.19.01-x_*.deb: debian package holding the libraries;

       o      libbobcat1-dev_3.19.01-x_*.deb:  debian  package holding the libraries, headers and
              manual pages;

       o      http://sourceforge.net/projects/bobcat: public archive location;

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).