Provided by: libbobcat-dev_4.01.03-2ubuntu1_amd64 bug

NAME

       FBB::OHexStreambuf - Writes characters written to an ostream as hex values

SYNOPSIS

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

DESCRIPTION

       OHexStreambuf  is a specialization of FBB::OFilterStreambuf inserting all the characters it receives to a
       destination file as  2-character  wide  hexadecimal  values.  Optionally  a  maximum  linelength  can  be
       specified.

       Note  that  all  information received by an OHexStreambuf object is inserted as (a series of) hexadecimal
       values, not only plain characters. E.g., when inserting the value 123 the characters ’1’, ’2’ and ’3’ are
       successively  inserted  and  so this will result in the string 313233 being inserted into the destination
       stream.

NAMESPACE

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

INHERITS FROM

       FBB::OFilterStreambuf

CONSTRUCTOR

       o      OFoldStreambuf(std::ostream &stream, size_t width = 0):
              The  hexadecimal  characters  produced  by the OFoldStreambuf object will be inserted into stream.
              Optionally the maximum line width (in number of characters) may  be  specified  using  width.  The
              (default) value 0 indicates that no line breaks are requested.

       The  destructor  writes  any  buffered  information  to  the destination stream and will then flushes the
       destination stream.

MEMBER FUNCTIONS

       All members of FBB::OFilterStreambuf, in particular its  out()  and  open()  members  are  available,  as
       FBB::OHexStreambuf inherits from this class.

       o      size_t size() const:
              This  member returns the next column offset where the next hexadecimal character will appear. If a
              maximum line length is requested and size() does not return 0 then the last line inserted was  not
              terminated by a ’\n’ character. See also the example below.

              This member’s return value is undefined if  no maximum line length was requested.

PROTECTED MEMBER FUNCTION

       The  member  listed  in this section implements the tasks of the comparably named virtual function in the
       class’s private interface. This separates the redefinable interface from the  user-interface.  The  class
       OHexStreambuf can, in accordance with Liskov’s Substitution Principle, be used as a std:streambuf; but it
       also offers a facility for classes deriving from OHexStreambuf. This facility is listed here.

       o      int pSync():
              The contents of the OHexStreambuf’s internal buffer is flushed.

STATIC MEMBER

       o      std::string text2bin(std::string const &in):
              This static member can be used to convert a  series  of  hexadecimal  characters  generated  by  a
              OHexStreambuf     object    back    to    their    binary    form.    E.g,    when    called    as
              OHexStreambuf::text2bin("736d616c6c206976")  then  the  returned  std::string   will   contain   8
              characters,  having  respectively  the binary values 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x69, and
              0x76.

              This function does not verify whether its argument is properly formed. A properly formed  argument
              consists  of  an  even  number  of hexadecimal number characters (’0’ until ’9’, ’a’ until ’f’ (or
              uppercase)). For improperly formed arguments the return value is undefined.

EXAMPLE

           #include <iostream>
           #include <bobcat/ohexstreambuf>

           using namespace std;
           using namespace FBB;

           int main()
           {
               OHexStreambuf ohex(cout, 40);
               ostream out(&ohex);
               out << cin.rdbuf();
               if (ohex.size())
                   cout << ’\n’;
           }

FILES

       bobcat/ohexstreambuf - defines the class interface

SEE ALSO

       bobcat(7), ofilterstreambuf(3bobcat)

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

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