table of contents
- bullseye 5.07.00-1
 - testing 6.02.02-1
 - unstable 6.02.02-1
 - experimental 6.03.02-1
 
| Bobcat(7) | C++ Classes | 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.
Generally, programs using the Bobcat library must be at least linked against the Bobcat library. Refer to section LINKING for more informatin about linking programs to required libraries.
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.
Beyond this section the section CATEGORIES groups classes that somehow belong together in various categories.
The following classes and 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::BinOpsBase: A class template implementing binary
    operators and compound assignment operators for classes that themselves
    implement swap members and members implementing the basic binary operation
    on objects of their class types themselves.
  
  (Manpage: man -e bobcat binopsbase)
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::Config: Processing standard configuration files.
  
  (Manpage: man -e bobcat config)
FBB::ConfigFile: Processing standard configuration files
    (deprecated, use Config).
  
  (Manpage: man -e bobcat configfile)
FBB::CryptBuf: Base class for DecryptBuf and EncryptBuf.
  
  (Manpage: man -e bobcat cryptbuf)
FBB::CSVTable: Construct tables row-by-row.
  
  (Manpage: man -e bobcat csvtable)
FBB::CSV4180: Objects of this class allow for easy handling
    of comma-separated values (implements RFC 4180).
  
  (Manpage: man -e bobcat csv4180)
FBB::DateTime: Manipulations with date and time values.
  
  (Manpage: man -e bobcat datetime)
FBB::DecryptBuf: Decrypting information.
  
  (Manpage: man -e bobcat decryptbuf)
FBB::DiffieHellman: Computing shared keys using the
    Diffie-Hellman algorithm.
  
  (Manpage: man -e bobcat diffiehellman)
FBB::DigestBuf: Computing message digests.
  
  (Manpage: man -e bobcat digestbuf)
FBB::EncryptBuf: Encrypting information.
  
  (Manpage: man -e bobcat encryptbuf)
FBB::Eoi: std::streambuf offering the eoi
    manipulator.
  
  (Manpage: man -e bobcat eoi)
FBB::Eoi: std::streambuf offering the eoi
    manipulator.
  
  (Manpage: man -e bobcat eoi)
FBB::EoiBuf: std::streambuf offering the eoi
    manipulator and a configurable stream buffer.
  
  (Manpage: man -e bobcat eoibuf)
FBB::Exception: objects of this class accept ostream
    insertions, and are also std::exception objects.
  
  (Manpage: man -e bobcat exception)
FBB::Exec: Executes child processes not expecting input and
    not producing standard output.
  
  (Manpage: man -e bobcat exec)
FBB::CerrExtractor: Executes child processes not expecting
    input but maybe writing its standard error stream.
  
  (Manpage: man -e bobcat cerrextractor)
FBB::CoutExtractor: Executes child processes not expecting
    input but maybe producing standard output.
  
  (Manpage: man -e bobcat coutextractor)
FBB::Field: class template retrieving and modifying
    position based fields in numbers using configurable number systems.
  
  (Manpage: man -e bobcat field)
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::IBase64Stream: stream implementing base64 encoding and
    decoding, using a FBB::Base64Streambuf stream buffer.
  
  (Manpage: man -e bobcat ibase64stream)
FBB::IBase64Buf: FBB::IFilterBuf specialization
    implementing base64 encoding and decoding.
  
  (Manpage: man -e bobcat ibase64buf)
FBB::IFdStream: stream extracting information from a device
    whose file descriptor is available.
  
  (Manpage: man -e bobcat ifdstream)
FBB::IFdBuf: Input stream buffer initialized by a file
    descriptor.
  
  (Manpage: man -e bobcat ifdbuf)
FBB::IFilterBuf: std::streambuf specialization
    implementing an std::istream filtering design pattern.
  
  (Manpage: man -e bobcat ifilterbuf)
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::CinInserter: Executes child processes expecting input
    but not producing standard output.
  
  (Manpage: man -e bobcat cininserter)
FBB::IOStream: class combining std::istream and
    std::ostream features.
  
  (Manpage: man -e bobcat iostream)
FBB::IOBuf: std::streambuf specialization allowing
    combined input and output operations.
  
  (Manpage: man -e bobcat iobuf)
FBB::ISharedStream: std::istream operations on
    shared memory.
  
  (Manpage: man -e bobcat isharedstream)
FBB::IQuotedPrintableStream: stream implementing quoted
    printable encoding and decoding, using a FBB::IQuotedPrintableBuf
    stream buffer.
  
  (Manpage: man -e bobcat iquotedprintablestream)
FBB::IQuotedPrintableBuf: FBB::IFilterBuf
    specialization implementing quoted printable encoding and decoding.
  
  (Manpage: man -e bobcat iquotedprintablebuf)
FBB::IRandStream: stream to extract random numbers from.
  
  (Manpage: man -e bobcat irandstream)
FBB::ISymCryptStream: stream implementing symmetric
    encryption and decryption, using a FBB::ISymCryptStreambuf stream
    buffer.
  
  (Manpage: man -e bobcat isymcryptstream)
FBB::ISymCryptStreambuf: FBB::IFilterBuf
    specialization implementing symmetric cryptography.
  
  (Manpage: man -e bobcat isymcryptstreambuf)
FBB::Iterator: a class template creating a bidirectional
    iterator returning values of a specified type.
  
  (Manpage: man -e bobcat iterator)
FBB::Hash...: Various class templates 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::LinearMap: a class template container implementing a
    map using a linear search algorithm.
  
  (Manpage: man -e bobcat linearmap)
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::LogBuf: std::streambuf handling log messages.
  
  (Manpage: man -e bobcat logbuf)
FBB::MailHeaders: extracts mail headers from SMTP-email.
  
  (Manpage: man -e bobcat mailheaders)
FBB::Manipulators: manipulators defined in the namespace
    FBB.
  
  (Manpage: man -e bobcat manipulators)
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::MultiBuf: std::streambuf specializations
    performing insertions to multiple std::ostream objects.
  
  (Manpage: man -e bobcat multibuf)
FBB::OMutexStream: Mutex protected std::ostream.
  
  (Manpage: man -e bobcat mxstream)
FBB::OFdStream: stream inserting information into a device
    whose file descriptor is available.
  
  (Manpage: man -e bobcat ofdstream)
FBB::OFdBuf: Output stream buffer initialized by a file
    descriptor.
  
  (Manpage: man -e bobcat ofdbuf)
FBB::OFilterBuf: std::streambuf specialization
    implementing an std::ostream filtering design pattern.
  
  (Manpage: man -e bobcat ofilterbuf)
FBB::OFoldStream: std::ostream using an
    OFoldBuf as its streambuf.
  
  (Manpage: man -e bobcat ofoldstream)
FBB::OFoldBuf: OFilterBuf (std::streambuf)
    specialization folding text lines between left and right margins.
  
  (Manpage: man -e bobcat ofoldbuf)
FBB::OHexBuf: OHexBuf (std::streambuf)
    specialization inserting characters into a stream by their hex values.
  
  (Manpage: man -e bobcat ohexbuf)
FBB::OneKey: Single keystroke input, not requiring
    `Return’.
  
  (Manpage: man -e bobcat onekey)
FBB::OSharedStream: std::ostream operations on
    shared memory.
  
  (Manpage: man -e bobcat osharedstream)
FBB::Pattern: Regular expression pattern matching.
  
  (Manpage: man -e bobcat pattern)
FBB::Pipe: Defines a system level pipe.
  
  (Manpage: man -e bobcat pipe)
FBB::PrimeFactors: Prime-number factorization of (BigInt)
    values.
  
  (Manpage: man -e bobcat primefactors)
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::RandBuf: implements a streambuf generating
    random numbers.
  
  (Manpage: man -e bobcat randbuf)
FBB::Ranger: a class template 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
    content.
  
  (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::ReverseIterator: a class template creating a
    bidirectional reverse iterator returning values of a specified type.
  
  (Manpage: man -e bobcat reverseiterator)
FBB::Selector: Offers timed delays and multiple file I/O.
  
  (Manpage: man -e bobcat selector)
FBB::Semaphore: Dijkstra’s (1962) Semaphore data
    type.
  
  (Manpage: man -e bobcat semaphore)
FBB::ServerSocket: defines a socket to which clients can
    connect.
  
  (Manpage: man -e bobcat serversocket)
FBB::SharedBlock: Shared memory data block info.
  
  (Manpage: man -e bobcat sharedblock)
FBB::SharedCondition: Shared memory condition variable.
  
  (Manpage: man -e bobcat sharedcondition)
FBB::SharedMemory: Shared memory structure.
  
  (Manpage: man -e bobcat sharedmemory)
FBB::SharedMutex: Mutex for shared memory.
  
  (Manpage: man -e bobcat sharedmutex)
FBB::SharedPos: Shared Memory offset controller.
  
  (Manpage: man -e bobcat sharedpos)
FBB::SharedReadme: Background info about the implementation
    of Bobcat’s Shared Memory.
  
  (Manpage: man -e bobcat sharedreadme)
FBB::SharedSegment: Shared memory data structure.
  
  (Manpage: man -e bobcat sharedsegment)
FBB::SharedStream: I/O operations on shared memory.
  
  (Manpage: man -e bobcat sharedstream)
FBB::SharedBuf: std::streambuf interfacing to shared
    memory.
  
  (Manpage: man -e bobcat sharedbuf)
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::StdExtractor: Executes child processes not expecting
    input but maybe writing their standard output and error streams.
  
  (Manpage: man -e bobcat stdextractor)
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 syslogstream)
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::Tty: Controls echoing of characters entered at the
    terminal.
  
  (Manpage: man -e bobcat tty)
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, SIGNALS, THREADS
 - o
 - STREAMS AND FILES
 - o
 - SHARED MEMORY
 - o
 - TABLES
 - o
 - VARIOUS TEMPLATES
 - 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::Config: Processing standard configuration files.
    
(Manpage: man -e bobcat configfile) - FBB::ConfigFile: Processing standard configuration files
      (deprecated, use Config).
    
(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::CSV4180: Objects of this class allow easy handling of
      comma-separated values (implements RFC 4180).
    
(Manpage: man -e bobcat csv) - FBB::IBase64Stream: stream implementing base64 encoding and
      decoding, using a FBB::Base64Streambuf stream buffer.
    
(Manpage: man -e bobcat ibase64stream) - FBB::IBase64Buf: FBB::IFilterBuf specialization implementing
      base64 encoding and decoding.
    
(Manpage: man -e bobcat ibase64buf) - FBB::IQuotedPrintableStream: stream implementing quoted printable
      encoding and decoding, using a FBB::IQuotedPrintableBuf stream
      buffer.
    
(Manpage: man -e bobcat iquotedprintablestream) - FBB::IQuotedPrintableBuf: FBB::IFilterBuf specialization
      implementing quoted printable encoding and decoding.
    
(Manpage: man -e bobcat iquotedprintablebuf) - 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::Exception: objects of this class accept ostream
      insertions, and are also std::exception objects.
    
(Manpage: man -e bobcat exception) - 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::LogBuf: std::streambuf handling log messages.
    
(Manpage: man -e bobcat logbuf) - 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 syslogstream) - 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::LinearMap: a class template container implementing a map using
      a linear search algorithm.
    
(Manpage: man -e bobcat linearmap) - 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::CryptBuf: Base class for DecryptBuf and EncryptBuf.
    
(Manpage: man -e bobcat cryptbuf) - FBB::DecryptBuf: Decrypting information.
    
(Manpage: man -e bobcat decryptbuf) - FBB::DiffieHellman: Computing shared keys using the Diffie-Hellman
      algorithm.
    
(Manpage: man -e bobcat diffiehellman) - 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) - FBB::ISymCryptStream: stream implementing symmetric encryption and
      decryption, using a FBB::ISymCryptStreambuf stream buffer.
    
(Manpage: man -e bobcat isymcryptstream) - FBB::ISymCryptStreambuf: FBB::IFilterBuf specialization
      implementing symmetric cryptography.
    
(Manpage: man -e bobcat isymcryptstreambuf) - o
 - PATTERN MATCHING
 - FBB::Glob: Obtain a list of files matching a certain pattern.
    
(Manpage: man -e bobcat glob) - FBB::Pattern: Regular expression pattern matching.
    
(Manpage: man -e bobcat pattern) - o
 - PROCESSES, SIGNALS, THREADS
 - FBB::Exec: Executes child processes not expecting input and not
      producing standard output.
    
(Manpage: man -e bobcat exec) - FBB::CerrExtractor: Executes child processes not expecting input
      but maybe writing its standard error stream.
    
(Manpage: man -e bobcat cerrextractor) - FBB::CoutExtractor: Executes child processes not expecting input
      but maybe producing standard output.
    
(Manpage: man -e bobcat coutextractor) - FBB::Fork: Defines fork(2) as part of a Template Algorithm
      Design Pattern.
    
(Manpage: man -e bobcat fork) - FBB::CinInserter: Executes child processes expecting input but not
      producing standard output.
    
(Manpage: man -e bobcat cininserter) - FBB::Process: Runs child processes, defining pipes between parents
      and child processes.
    
(Manpage: man -e bobcat process) - FBB::Semaphore: Dijkstra’s (1962) Semaphore data type.
    
(Manpage: man -e bobcat semaphore) - 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::StdExtractor: Executes child processes not expecting input but
      maybe writing their standard output and error streams.
    
(Manpage: man -e bobcat stdextractor) - o
 - STREAMS AND FILES
 - FBB::DigestBuf: Computing message digests.
    
(Manpage: man -e bobcat digestbuf) - FBB::Eoi: std::streambuf offering the eoi
      manipulator.
    
(Manpage: man -e bobcat eoi) - FBB::EoiBuf: std::streambuf offering the eoi
      manipulator and a configurable stream buffer.
    
(Manpage: man -e bobcat eoibuf) - FBB::IFdStream: stream extracting information from a device whose
      file descriptor is available.
    
(Manpage: man -e bobcat ifdstream) - FBB::IFdBuf: Input stream buffer initialized by a file descriptor.
    
(Manpage: man -e bobcat ifdbuf) - FBB::IFilterBuf: std::streambuf specialization implementing
      an std::istream filtering design pattern.
    
(Manpage: man -e bobcat ifilterbuf) - FBB::IOStream: class combining std::istream and
      std::ostream features.
    
(Manpage: man -e bobcat iostream) - FBB::IOBuf: std::streambuf specialization allowing combined
      input and output operations.
    
(Manpage: man -e bobcat iobuf) - FBB::IRandStream: stream to extract random numbers from.
    
((Manpage: man -e bobcat irandstream)) - FBB::ISharedStream: std::istream operations on shared
      memory.
    
(Manpage: man -e bobcat isharedstream) - 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::MultiBuf: std::streambuf specializations performing
      insertions to multiple std::ostream objects.
    
(Manpage: man -e bobcat multibuf) - FBB::OMutexStream: Mutex protected std::ostream.
    
(Manpage: man -e bobcat mxstream) - FBB::OFdStream: stream inserting information into a device whose
      file descriptor is available.
    
(Manpage: man -e bobcat ofdstream) - FBB::OFdBuf: Output stream buffer initialized by a file descriptor.
    
(Manpage: man -e bobcat ofdbuf) - FBB::OFilterBuf: std::streambuf specialization implementing
      an std::ostream filtering design pattern.
    
(Manpage: man -e bobcat ofilterbuf) - FBB::OFoldStream: std::ostream using an OFoldBuf as
      its streambuf.
    
(Manpage: man -e bobcat ofoldstream) - FBB::OFoldBuf: OFilterBuf (std::streambuf)
      specialization folding text lines between left and right margins.
    
(Manpage: man -e bobcat ofoldbuf) - FBB::OHexBuf: OHexBuf (std::streambuf) specialization
      inserting characters into a stream by their hex values.
    
(Manpage: man -e bobcat ohexbuf) - FBB::OSharedStream: std::ostream operations on shared
      memory.
    
(Manpage: man -e bobcat osharedstream) - FBB::Pipe: Defines a system level pipe.
    
(Manpage: man -e bobcat pipe) - FBB::RandBuf: implements a streambuf generating random
      numbers.
    
(Manpage: man -e bobcat randbuf) - FBB::ReadLineBuf: implements a streambuf using the Gnu
      readline library to allow editing an std::istream’s
      content.
    
(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::SharedStream: I/O operations on shared memory.
    
(Manpage: man -e bobcat sharedstream) - FBB::SharedBuf: std::streambuf interfacing to shared memory.
    
(Manpage: man -e bobcat sharedbuf) - FBB::Stat: Determines file characteristics.
    
(Manpage: man -e bobcat stat) - FBB::TempStream: Temporary fstream.
    
(Manpage: man -e bobcat tempstream) - o
 - SHARED MEMORY
 - FBB::ISharedStream: std::istream operations on shared
      memory.
    
(Manpage: man -e bobcat isharedstream) - FBB::OSharedStream: std::ostream operations on shared
      memory.
    
(Manpage: man -e bobcat osharedstream) - FBB::SharedBlock: Shared memory data block info.
    
(Manpage: man -e bobcat sharedblock) - FBB::SharedCondition: Shared memory condition variable.
    
(Manpage: man -e bobcat sharedcondition) - FBB::SharedMemory: Shared memory structure.
    
(Manpage: man -e bobcat sharedmemory) - FBB::SharedMutex: Mutex for shared memory.
    
(Manpage: man -e bobcat sharedmutex) - FBB::SharedPos: Shared Memory offset controller.
    
(Manpage: man -e bobcat sharedpos) - FBB::SharedReadme: Background info about the implementation of
      Bobcat’s Shared Memory.
    
(Manpage: man -e bobcat sharedreadme) - FBB::SharedSegment: Shared memory data structure.
    
(Manpage: man -e bobcat sharedsegment) - FBB::SharedStream: I/O operations on shared memory.
    
(Manpage: man -e bobcat sharedstream) - FBB::SharedBuf: std::streambuf interfacing to shared memory.
    
(Manpage: man -e bobcat sharedbuf) - o
 - TABLES
 - FBB::Align: Specifies Table(Buf) column and element
      alignments.
    
(Manpage: man -e bobcat align) - FBB::CSVTable: Construct tables row-by-row.
    
(Manpage: man -e bobcat csvtable) - 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 TEMPLATES
 - 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::BinOpsBase: A class template implementing binary operators and
      compound assignment operators for classes that themselves implement swap
      members and members implementing the basic binary operation on objects of
      their class types themselves.
    
(Manpage: man -e bobcat binopsbase) - FBB::Field: class template retrieving and modifying position based
      fields in numbers using configurable number systems.
    
(Manpage: man -e bobcat field) - FBB::fswap: templates implementing memory bytes based swap
      functionality
    
(Manpage: man -e bobcat fswap) - FBB::Hash...: Various class templates implementing mapping
      containers using hashing.
    
(Manpage: man -e bobcat hash) - FBB::Iterator: a class template creating a bidirectional iterator
      returning values of a specified type.
    
(Manpage: man -e bobcat iterator) - FBB::LinearMap: a class template container implementing a map using
      a linear search algorithm.
    
(Manpage: man -e bobcat linearmap) - 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: a class template creating ranges that are accepted by
      range-based for-loops. Also offered: a ranger function template.
    
(Manpage: man -e bobcat ranger) - FBB::repeat: Two short extensions of the STL for_each
      generic algorithm.
    
(Manpage: man -e bobcat repeat) - FBB::ReverseIterator: a class template creating a bidirectional
      reverse iterator returning values of a specified type.
    
(Manpage: man -e bobcat reverseiterator) - FBB::TypeTrait: Traits class template to determine various
      characteristics of types.
    
(Manpage: man -e bobcat typetrait) - o
 - VARIOUS OTHER CLASSES
 - FBB::CSV: Objects of this class allow easy handling of
      comma-separated values.
    
(Manpage: man -e bobcat csv) - FBB::Indent: Class and manipulators performing text indentation.
    
(Manpage: man -e bobcat indent) - FBB::Manipulators: manipulators defined in the namespace
      FBB.
    
(Manpage: man -e bobcat manipulators) - FBB::OneKey: Single keystroke input, not requiring `Return’.
    
(Manpage: man -e bobcat onekey) - FBB::PrimeFactors: Pprime-number factorization of (BigInt) values.
    
(Manpage: man -e bobcat primefactors) - 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::Tty: Controls echoing of characters entered at the terminal.
    
(Manpage: man -e bobcat tty) - 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) 
LINKING¶
To link programs against the shared Bobcat library (e.g., libbobcat5.so) it is usually sufficient to merely specify -lbobcat. E.g.,
g++ --std=c++2a main.cc -lbobcat
Due to a change in library handling by the linker (cf. http://fedoraproject.org/wiki/UnderstandingDSOLinkChange and https://wiki.debian.org/ToolChain/DSOLinking), implemented in 2013, libraries that are indirectly required are no longer automatically linked to your program. With some classes (e.g., BigInt) the libcrypto library must also be specified, and programs using such classes must be linked against bobcat and crypto:
Man-pages of classes requiring additional libraries mention these additional libraries in their SYNOPSIS sections.
g++ --std=c++2a main.cc -lbobcat -lcrypto
When using static linking, the situation is slightly more problematic, and no general rule can be provided here. To create a statically linked program the flag -static must be provided, but in addition the -pthread flag must often be specified as well. If, when statically linking your program, undefined references to pthread_... identifiers are reported, then that is a sure sign that you need to provide the -pthread flag as well.
When using static linking additional libraries, not specified at the man-pages, may also be required. E.g., when using the Xpointer class and using static linking, the command becomes:
When encountering undefined references when using static linking missing libraries may be suggested by the linker or by its error messages. Alternatively, the missing libraries may be found by searching the Internet.
g++ main.cc -static -pthread -lbobcat -lX11 -lxcb -lXdmcp -lXau
FILES¶
SEE ALSO¶
The individual bobcat/3<class> header files, with man-pages accessible using man -e bobcat class (all lowercase names)
BUGS¶
No Reported Bugs.
BOBCAT PROJECT FILES¶
- o
 - https://fbb-git.gitlab.io/bobcat/: gitlab project page;
 - o
 - bobcat_5.07.00-x.dsc: detached signature;
 - o
 - bobcat_5.07.00-x.tar.gz: source archive;
 - o
 - bobcat_5.07.00-x_i386.changes: change log;
 - o
 - libbobcat1_5.07.00-x_*.deb: debian package containing the libraries;
 - o
 - libbobcat1-dev_5.07.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).
| 2005-2020 | libbobcat-dev_5.07.00 |