Bobcat(7)

NAME
Bobcat - Overview of classes in the Bobcat library

DESCRIPTION
The classes of the Bobcat library may be used after including bobcat/classname in sources.

All classes and other elements are defined in the FBB namespace. For some classes manipulators are available, which are defined in the FBB namespace. An overview of all manipulators defined in the FBB namespace is provided by man -e bobcat manipulators.

Next to this section the section CATEGORIES groups classes that somehow belong together in various categories.

The following classes and template functions are available:

FBB::Align: Specifies Table(Buf) column and element alignments.
(Manpage: man -e bobcat align)

FBB::Arg: Interfaces the command line arguments, allowing for short- and long options. The class is implemented as a Singleton.
(Manpage: man -e bobcat arg)

FBB::ArgConfig: Inherits from Arg and ConfigFile allowing for options to be specified as command line options and/or configuration file options. The class is implemented as a Singleton.
(Manpage: man -e bobcat argconfig)

FBB::A2x: Ascii-to-x conversions of any type supporting extractions from i[string]stream objects. (Manpage: man -e bobcat a2x)

FBB::BigInt: Wrapper class around the openssl BN_ functions for unlimited integer precision arithmetic.
(Manpage: man -e bobcat bigint)

FBB::binary_search: A modification of the STL binary_search algorithm returning the location of the searched value in a sorted series of values.
(Manpage: man -e bobcat binarysearch)

FBB::BinOps: A series of function templates implementing binary operators for classes that implement the matching binary assignment operators themselves.
(Manpage: man -e bobcat binops)

FBB::CGI: a class implementing the facilities accessing the data made available through the Common Gateway Interface.
(Manpage: man -e bobcat cgi)

FBB::Cidr: a class testing whether IP4 Internet addresses belong to address ranges defined by Classless Inter-Domain Routing (CIDR) address block specifications.
(Manpage: man -e bobcat cidr)

FBB::ClientSocket: a socket for tcp-communication with a server.
(Manpage: man -e bobcat clientsocket)

FBB::CmdFinder: Command-function associations.
(Manpage: man -e bobcat cmdfinder)

FBB::CmdFinderBase: Base class for CmdFinder.
(Manpage: man -e bobcat cmdfinderbase)

FBB::ConfigFile: Processing standard configuration files.
(Manpage: man -e bobcat configfile)

FBB::DateTime: Manipulations with date and time values.
(Manpage: man -e bobcat datetime)

FBB::DecryptBuf: Decrypting information.
(Manpage: man -e bobcat decryptbuf)

FBB::DigestBuf: Computeting message digests.
(Manpage: man -e bobcat digestbuf)

FBB::EncryptBuf: Encrypting information.
(Manpage: man -e bobcat encryptbuf)

FBB::Errno: Defines objects which may be thrown as an exception.
(Manpage: man -e bobcat errno)

FBB::Fork: Defines fork(2) as part of a Template Algorithm Design Pattern.
(Manpage: man -e bobcat fork)

FBB::GetHostent: Obtains hostent struct from hostname or -address.
(Manpage: man -e bobcat gethostent)

FBB::Glob: Obtain a list of files matching a certain pattern.
(Manpage: man -e bobcat glob)

FBB::HmacBuf: Computing HMAC message digests.
(Manpage: man -e bobcat hmacbuf)

FBB::Hostname: Derived from Hostent, allows the initialization from a std::string, or from an FBB::InetAddrress.
(Manpage: man -e bobcat hostname)

FBB::IFdStream: stream extracting information from a device whose file descriptor is available.
(Manpage: man -e bobcat ifdstream)

FBB::IFdStreambuf: Input stream buffer initialized by a file descriptor.
(Manpage: man -e bobcat ifdstreambuf)

FBB::Indent: Class and manipulators performing text indentation.
(Manpage: man -e bobcat indent)

FBB::InetAddress: Base class (no public constructor) for objects representing an internet address as used with sockets. Contains address and portnumbers.
(Manpage: man -e bobcat inetaddress)

FBB::IOStream: class combining std::istream and std::ostream features.
(Manpage: man -e bobcat iostream)

FBB::IOStreambuf: std::streambuf specialization allowing combined input and output operations.
(Manpage: man -e bobcat iostreambuf)

FBB::IRandStream: stream to extract random numbers from.
(Manpage: man -e bobcat irandstream)

FBB::Hash...: Various template classes implementing mapping containers using hashing.
(Manpage: man -e bobcat hash)

FBB::Hostent: Wrapper around the hostent struct.
(Manpage: man -e bobcat hostent)

FBB::level: Manipulator setting the log-level of FBB::Log objects.
(Manpage: man -e bobcat level)

FBB::lm: Manipulator setting the left margin of FBB::OFoldStream objects.
(Manpage: man -e bobcat lm)

FBB::LocalClientSocket: a Unix domain socket for tcp-communication with a Unix domain (local) server.
(Manpage: man -e bobcat localclientsocket)

FBB::LocalServerSocket: defines a Unix domain socket to which clients on the local host can connect.
(Manpage: man -e bobcat localserversocket)

FBB::LocalSocketBase: Base class for LocalClientSocket and LocalServerSocket.
(Manpage: man -e bobcat localsocketbase)

FBB::Log: std::ostream handling log messages.
(Manpage: man -e bobcat log)

FBB::LogBuffer: std::streambuf handling log messages.
(Manpage: man -e bobcat logbuffer)

FBB::MailHeaders: extracts mail headers from SMTP-email.
(Manpage: man -e bobcat mailheaders)

FBB::Mbuf: std::streambuf specialization for inserting messages, mainly used by FBB::Mstream objects.
(Manpage: man -e bobcat mbuf)

FBB::Milter: interfaces the sendmail mail filter facilities.
(Manpage: man -e bobcat milter)

FBB::mlm: Manipulator modifying the left margin of FBB::OFoldStream objects.
(Manpage: man -e bobcat mlm)

FBB::Mstream: Inserts messages into streams.
(Manpage: man -e bobcat mstream)

FBB::MultiStreambuf: std::streambuf specializations performing insertions to multiple std::ostream objects.
(Manpage: man -e bobcat multistreambuf)

FBB::OFdStream: stream inserting information into a device whose file descriptor is available.
(Manpage: man -e bobcat ofdstream)

FBB::OFdStreambuf: Output stream buffer initialized by a file descriptor.
(Manpage: man -e bobcat ofdstreambuf)

FBB::OFilterStreambuf: std::streambuf specialization implementing an std::ostream filtering design pattern.
(Manpage: man -e bobcat ofilterstreambuf)

FBB::OFoldStream: std::ostream using an OFoldStreambuf as its streambuf.
(Manpage: man -e bobcat ofoldstream)

FBB::OFoldStreambuf: OFilterStreambuf (std::streambuf) specialization folding text lines between left and right margins.
(Manpage: man -e bobcat ofoldstreambuf)

FBB::OHexStreambuf: OHexStreambuf (std::streambuf) specialization inserting characters into a stream by their hex values.
(Manpage: man -e bobcat ohexstreambuf)

FBB::OneKey: Single keystroke input, not requiring `Return’.
(Manpage: man -e bobcat onekey)

FBB::Pattern: Performs regular expression pattern matching.
(Manpage: man -e bobcat pattern)

FBB::Pipe: Defines a system level pipe.
(Manpage: man -e bobcat pipe)

FBB::Process: Runs child processes, defining pipes between parents and child processes.
(Manpage: man -e bobcat process)

FBB::PtrIter: Input iterator whose dereferenced value returns a pointer rather than a reference to an element. Also offers: a ptrIter function template.
(Manpage: man -e bobcat ptriter)

FBB::Randbuffer: implements a streambuf generating random numbers.
(Manpage: man -e bobcat randbuffer)

FBB::Ranger: class creating ranges that are accepted by range-based for-loops. Also offered: a ranger function template.
(Manpage: man -e bobcat ranger)

FBB::ReadLineBuf: implements a streambuf using the Gnu readline library to allow editing an std::istream’s contents.
(Manpage: man -e bobcat readlinebuf)

FBB::ReadLineHistory: provides access to the history of lines read from a ReadLineBuf.
(Manpage: man -e bobcat readlinehistory)

FBB::ReadLineStream: std::istream class using a ReadLineBuf for its std::streambuf.
(Manpage: man -e bobcat readlinestream)

FBB::Redirector: Defines system level file redirection.
(Manpage: man -e bobcat redirector)

FBB::repeat: Two short extensions of the STL for_each generic algorithm.
(Manpage: man -e bobcat repeat)

FBB::Selector: Offers timed delays and multiple file I/O.
(Manpage: man -e bobcat selector)

FBB::ServerSocket: defines a socket to which clients can connect.
(Manpage: man -e bobcat serversocket)

FBB::Signal: Defines signals, allowing signal handlers to use object’s data members c.q. to call object’s members functions.
(Manpage: man -e bobcat signal)

FBB::SocketBase: Base class for ClientSocket and ServerSocket.
(Manpage: man -e bobcat socketbase)

FBB::Stat: Determines file characteristics.
(Manpage: man -e bobcat stat)

FBB::String: Offers extended std::string functionality.
(Manpage: man -e bobcat string)

FBB::StringLine: Offers operator>> extracting lines from std::istream objects.
(Manpage: man -e bobcat stringline)

FBB::Syslogbuf: streambuf to Buffer generating syslog(3) messages.
(Manpage: man -e bobcat syslogbuf)

FBB::SyslogStream: stream to Output stream inserting syslog(3) messages.
(Manpage: man -e bobcat syslogbuf)

FBB::fswap: templates implementing memory bytes based swap functionality
(Manpage: man -e bobcat fswap)

FBB::Table: Display tables row- or column-wise.
(Manpage: man -e bobcat table)

FBB::TableBuf: Display tables row- or column-wise.
(Manpage: man -e bobcat tablebuf)

FBB::TableLines: Support class for the class Table(Buf).
(Manpage: man -e bobcat tablelines)

FBB::TableSupport: Support class for the class Table(Buf).
(Manpage: man -e bobcat tablesupport)

FBB::TempStream: Temporary fstream.
(Manpage: man -e bobcat tempstream)

FBB::TypeTrait: Traits class template to determine various characteristics of types.
(Manpage: man -e bobcat typetrait)

FBB::User: Determines the current user’s parameters from /etc/passwd.
(Manpage: man -e bobcat user)

FBB::Xpointer: sets and retrieves the X-windows pointer.
(Manpage: man -e bobcat xpointer)

FBB::X2a: x-to-Ascii conversions of any type supporting insertions into o[string]stream objects.
(Manpage: man -e bobcat x2a)

CATEGORIES

This section groups classes that somehow belong together. The following categories are offered:

o   COMMAND LINE INTERFACE AND CONFIGURATION FILES

o   CONVERSIONS

o   DATE AND TIME

o   ERRORS AND MESSAGE HANDLING

o   GENERIC ALGORITHM EXTENSIONS

o   INTERNET / NETWORKING

o   OPENSSL AND ENCRYPTION

o   PATTERN MATCHING

o   PROCESSES AND SIGNALS

o   STREAMS AND FILES

o   TABLES

o   VARIOUS OTHER CLASSES

o   COMMAND LINE INTERFACE AND CONFIGURATION FILES

    FBB::Arg: Interfaces the command line arguments, allowing for short- and long options. The class is implemented as a Singleton.
    (Manpage: man -e bobcat arg)

    FBB::ArgConfig: Inherits from Arg and ConfigFile allowing for options to be specified as command line options and/or configuration file options. The class is implemented as a Singleton.
    (Manpage: man -e bobcat argconfig)

    FBB::CmdFinder: Command-function associations.
    (Manpage: man -e bobcat cmdfinder)

    FBB::CmdFinderBase: Base class for CmdFinder.
    (Manpage: man -e bobcat cmdfinderbase)

    FBB::ConfigFile: Processing standard configuration files.
    (Manpage: man -e bobcat configfile)

o   CONVERSIONS

    FBB::A2x: Ascii-to-x conversions of any type supporting extractions from i[string]stream objects. (Manpage: man -e bobcat a2x)

    FBB::BigInt: Wrapper class around the openssl BN_ functions for unlimited integer precision arithmetic.
    (Manpage: man -e bobcat bigint)

    FBB::X2a: x-to-Ascii conversions of any type supporting insertions into o[string]stream objects.
    (Manpage: man -e bobcat x2a)

o   DATE AND TIME

    FBB::DateTime: Manipulations with date and time values.
    (Manpage: man -e bobcat datetime)

o   ERRORS AND MESSAGE HANDLING

    FBB::Errno: Defines objects which may be thrown as an exception.
    (Manpage: man -e bobcat errno)

    FBB::level: Manipulator setting the log-level of FBB::Log objects.
    (Manpage: man -e bobcat level)

    FBB::Log: std::ostream handling log messages.
    (Manpage: man -e bobcat log)

    FBB::LogBuffer: std::streambuf handling log messages.
    (Manpage: man -e bobcat logbuffer)

    FBB::Syslogbuf: streambuf to Buffer generating syslog(3) messages.
    (Manpage: man -e bobcat syslogbuf)

    FBB::SyslogStream: stream to Output stream inserting syslog(3) messages.
    (Manpage: man -e bobcat syslogbuf)

o   GENERIC ALGORITHM EXTENSIONS

    FBB::binary_search: A modification of the STL binary_search algorithm returning the location of the searched value in a sorted series of values.
    (Manpage: man -e bobcat binarysearch)

    FBB::repeat: Two short extensions of the STL for_each generic algorithm.
    (Manpage: man -e bobcat repeat)

o   INTERNET / NETWORKING

    FBB::CGI: a class implementing the facilities accessing the data made available through the Common Gateway Interface.
    (Manpage: man -e bobcat cgi)

    FBB::Cidr: a class testing whether IP4 Internet addresses belong to address ranges defined by Classless Inter-Domain Routing (CIDR) address block specifications.
    (Manpage: man -e bobcat cidr)

    FBB::ClientSocket: a socket for tcp-communication with a server.
    (Manpage: man -e bobcat clientsocket)

    FBB::GetHostent: Obtains hostent struct from hostname or -address.
    (Manpage: man -e bobcat gethostent)

    FBB::Hostname: Derived from Hostent, allows the initialization from a std::string, or from an FBB::InetAddrress.
    (Manpage: man -e bobcat hostname)

    FBB::InetAddress: Base class (no public constructor) for objects representing an internet address as used with sockets. Contains address and portnumbers.
    (Manpage: man -e bobcat inetaddress)

    FBB::Hostent: Wrapper around the hostent struct.
    (Manpage: man -e bobcat hostent)

    FBB::LocalClientSocket: a Unix domain socket for tcp-communication with a Unix domain (local) server.
    (Manpage: man -e bobcat localclientsocket)

    FBB::LocalServerSocket: defines a Unix domain socket to which clients on the local host can connect.
    (Manpage: man -e bobcat localserversocket)

    FBB::LocalSocketBase: Base class for LocalClientSocket and LocalServerSocket.
    (Manpage: man -e bobcat localsocketbase)

    FBB::MailHeaders: extracts mail headers from SMTP-email.
    (Manpage: man -e bobcat mailheaders)

    FBB::Milter: interfaces the sendmail mail filter facilities.
    (Manpage: man -e bobcat milter)

    FBB::ServerSocket: defines a socket to which clients can connect.
    (Manpage: man -e bobcat serversocket)

    FBB::SocketBase: Base class for ClientSocket and ServerSocket.
    (Manpage: man -e bobcat socketbase)

o   OPENSSL AND ENCRYPTION

    FBB::BigInt: Wrapper class around the openssl BN_ functions for unlimited integer precision arithmetic.
    (Manpage: man -e bobcat bigint)

    FBB::DecryptBuf: Decrypting information.
    (Manpage: man -e bobcat decryptbuf)

    FBB::DigestBuf: Computing message digests.
    (Manpage: man -e bobcat digestbuf)

    FBB::EncryptBuf: Encrypting information.
    (Manpage: man -e bobcat encryptbuf)

    FBB::HmacBuf: Computing HMAC message digests.
    (Manpage: man -e bobcat hmacbuf)

o   PATTERN MATCHING

    FBB::Glob: Obtain a list of files matching a certain pattern.
    (Manpage: man -e bobcat glob)

    FBB::Pattern: Performs regular expression pattern matching.
    (Manpage: man -e bobcat pattern)

o   PROCESSES AND SIGNALS

    FBB::Fork: Defines fork(2) as part of a Template Algorithm Design Pattern.
    (Manpage: man -e bobcat fork)

    FBB::Process: Runs child processes, defining pipes between parents and child processes.
    (Manpage: man -e bobcat process)

    FBB::Signal: Defines signals, allowing signal handlers to use object’s data members c.q. to call object’s members functions.
    (Manpage: man -e bobcat signal)

o   STREAMS AND FILES

    FBB::DigestBuf: Computeting message digests.
    (Manpage: man -e bobcat digestbuf)

    FBB::IFdStream: stream extracting information from a device whose file descriptor is available.
    (Manpage: man -e bobcat ifdstream)

    FBB::IFdStreambuf: Input stream buffer initialized by a file descriptor.
    (Manpage: man -e bobcat ifdstreambuf)

    FBB::IOStream: class combining std::istream and std::ostream features.
    (Manpage: man -e bobcat iostream)

    FBB::IOStreambuf: std::streambuf specialization allowing combined input and output operations.
    (Manpage: man -e bobcat iostreambuf)

    FBB::IRandStream: stream to extract random numbers from.
    (Manpage: man -e bobcat irandstream)

    FBB::lm: Manipulator setting the left margin of FBB::OFoldStream objects.
    (Manpage: man -e bobcat lm)

    FBB::Mbuf: std::streambuf specialization for inserting messages, mainly used by FBB::Mstream objects.
    (Manpage: man -e bobcat mbuf)

    FBB::mlm: Manipulator modifying the left margin of FBB::OFoldStream objects.
    (Manpage: man -e bobcat mlm)

    FBB::Mstream: Inserts messages into streams.
    (Manpage: man -e bobcat mstream)

    FBB::MultiStreambuf: std::streambuf specializations performing insertions to multiple std::ostream objects.
    (Manpage: man -e bobcat multistreambuf)

    FBB::OFdStream: stream inserting information into a device whose file descriptor is available.
    (Manpage: man -e bobcat ofdstream)

    FBB::OFdStreambuf: Output stream buffer initialized by a file descriptor.
    (Manpage: man -e bobcat ofdstreambuf)

    FBB::OFilterStreambuf: std::streambuf specialization implementing an std::ostream filtering design pattern.
    (Manpage: man -e bobcat ofilterstreambuf)

    FBB::OFoldStream: std::ostream using an OFoldStreambuf as its streambuf.
    (Manpage: man -e bobcat ofoldstream)

    FBB::OFoldStreambuf: OFilterStreambuf (std::streambuf) specialization folding text lines between left and right margins.
    (Manpage: man -e bobcat ofoldstreambuf)

    FBB::OHexStreambuf: OHexStreambuf (std::streambuf) specialization inserting characters into a stream by their hex values.
    (Manpage: man -e bobcat ohexstreambuf)

    FBB::Pipe: Defines a system level pipe.
    (Manpage: man -e bobcat pipe)

    FBB::Randbuffer: implements a streambuf generating random numbers.
    (Manpage: man -e bobcat randbuffer)

    FBB::ReadLineBuf: implements a streambuf using the Gnu readline library to allow editing an std::istream’s contents.
    (Manpage: man -e bobcat readlinebuf)

    FBB::ReadLineHistory: provides access to the history of lines read from a ReadLineBuf.
    (Manpage: man -e bobcat readlinehistory)

    FBB::ReadLineStream: std::istream class using a ReadLineBuf for its std::streambuf.
    (Manpage: man -e bobcat readlinestream)

    FBB::Redirector: Defines system level file redirection.
    (Manpage: man -e bobcat redirector)

    FBB::Selector: Offers timed delays and multiple file I/O.
    (Manpage: man -e bobcat selector)

    FBB::Stat: Determines file characteristics.
    (Manpage: man -e bobcat stat)

    FBB::TempStream: Temporary fstream.
    (Manpage: man -e bobcat tempstream)

o   TABLES

    FBB::Align: Specifies Table(Buf) column and element alignments.
    (Manpage: man -e bobcat align)

    FBB::Table: Display tables row- or column-wise.
    (Manpage: man -e bobcat table)

    FBB::TableBuf: Display tables row- or column-wise.
    (Manpage: man -e bobcat tablebuf)

    FBB::TableLines: Support class for the class Table(Buf).
    (Manpage: man -e bobcat tablelines)

    FBB::TableSupport: Support class for the class Table(Buf).
    (Manpage: man -e bobcat tablesupport)

o   VARIOUS OTHER CLASSES

    FBB::BinOps: A series of function templates implementing binary operators for classes that implement the matching binary assignment operators themselves.
    (Manpage: man -e bobcat binops)

    FBB::fswap: templates implementing memory bytes based swap functionality
    (Manpage: man -e bobcat fswap)

    FBB::Indent: Class and manipulators performing text indentation.
    (Manpage: man -e bobcat indent)

    FBB::Hash...: Various template classes implementing mapping containers using hashing.
    (Manpage: man -e bobcat hash)

    FBB::OneKey: Single keystroke input, not requiring `Return’.
    (Manpage: man -e bobcat onekey)

    FBB::PtrIter: Input iterator whose dereferenced value returns a pointer rather than a reference to an element. Also offers: a ptrIter function template.
    (Manpage: man -e bobcat ptriter)

    FBB::Ranger: class creating ranges that are accepted by range-based for-loops. Also offered: a ranger function template.
    (Manpage: man -e bobcat ranger)

    FBB::String: Offers extended std::string functionality.
    (Manpage: man -e bobcat string)

    FBB::StringLine: Offers operator>> extracting lines from std::istream objects.
    (Manpage: man -e bobcat stringline)

    FBB::TypeTrait: Traits class template to determine various characteristics of types.
    (Manpage: man -e bobcat typetrait)

    FBB::User: Determines the current user’s parameters from /etc/passwd.
    (Manpage: man -e bobcat user)

    FBB::Xpointer: sets and retrieves the X-windows pointer.
    (Manpage: man -e bobcat xpointer)

FILES

o   /usr/include/bobcat/<classname>:

o   /usr/lib/libbobcat.*:
    (shared, static libraries)

SEE ALSO
The individual bobcat/<class> header files, with man-pages accessible using man -e bobcat class (all lowercase names)

BUGS
No Reported Bugs.

DISTRIBUTION FILES

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

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

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

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

o   libbobcat1-dev_3.11.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).