FBB::IOStream(3) Combines std::istream and std::ostream features

SYNOPSIS

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

DESCRIPTION

This class combines the features of the std::istream and std::ostream classes. The std::istream and std::ostream may be physically different streams. FBB:IOStream objects may, e.g., be associated with streams wrapped around pipes (see, e.g., FBB::IfdStream and FBB::OFdStream), to construct bi-directional pipes.

NAMESPACE

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

INHERITS FROM

FBB::IOStreambuf (private inheritance),
std::istream,
std::ostream

CONSTRUCTORS

  • IOStream():
    The default constructor constructs an empty FBB::IOStream objects. It should not be used before its open member (see below) was called.
  • IOStream(std::istream &in, std::ostream &out):
    This constructor associates the IOStream object with a std::istream and a std::ostream. All output operations will be passed on to the std::ostream, all input operations to the std::istream. The streams passed to IOStream should outlive the IOStream object. This constructor performs the actions of the default constructor and then calls the IOStream::open member De copy constructor is available as well.

MEMBER FUNCTIONS

All members of std::istream and std::ostream are available, as FBB::IOStream inherits from these classes. Furthermore, when switching between std::istream and std::ostream operations, no intermediate seekg() or seekp() operation will normally be required, since the base classes will normally be associated with physically different streams.
  • void open(std::istream &in, std::ostream &out):
    This member (re)associates the IOStream object with a std::istream and a std::ostream. All output operations will be passed on to the std::ostream, all input operations to the std::istream. The streams passed to IOStream() should outlive the IOStream object. If this member is called for an IOStream object already associated with an std::ostream object, the already associated std::ostream object is flushed before setting up the new association.
  • void clear():
    This member clears the error states of the associated std::istream and std::ostream objects.

EXAMPLE

See the example provided with process(3bobcat).

FILES

bobcat/iostream - defines the class interface

BUGS

None Reported.

DISTRIBUTION FILES

  • bobcat_4.02.00-x.dsc: detached signature;
  • bobcat_4.02.00-x.tar.gz: source archive;
  • bobcat_4.02.00-x_i386.changes: change log;
  • libbobcat1_4.02.00-x_*.deb: debian package holding the libraries;
  • libbobcat1-dev_4.02.00-x_*.deb: debian package holding the libraries, headers and manual pages;
  • 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 ([email protected]).