SIMPLE SOLUTIONS

FBB::RANDBUFFER - reference manual online

Std::streambuf generating random numbers.

Chapter
2005-2015
FBB::RandBuffer(3bobcat)             random number streambuf             FBB::RandBuffer(3bobcat)

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_4.01.03-x.dsc: detached signature; o bobcat_4.01.03-x.tar.gz: source archive; o bobcat_4.01.03-x_i386.changes: change log; o libbobcat1_4.01.03-x_*.deb: debian package holding the libraries; o libbobcat1-dev_4.01.03-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’.
AUTHOR Frank B. Brokken (@rug.nl).
libbobcat-dev_4.01.03-x.tar.gz 2005-2015 FBB::RandBuffer(3bobcat)
This manual Reference Other manuals
randbuffer(3bobcat) referred by irandstream(3bobcat)
refer to bobcat(7) | irandstream(3bobcat) | rand(3)