FBB::IOStream(3bobcat) std::istream and std::ostream FBB::IOStream(3bobcat) NAME FBB::IOStream - Combines std::istream and std::ostream features SYNOPSIS #include 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::IOBuf (private inheritance), std::istream, std::ostream CONSTRUCTORS o IOStream(): The default constructor constructs an empty FBB::IOStream objects. It should not be used before its open member (see below) was called. o 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 Copy and move constructors (and assignment operators) are not available. 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. o 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. o 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 SEE ALSO bobcat(7), ifdstream(3bobcat), iobuf(3bobcat), ofdstream(3bobcat), process(3bobcat) BUGS None Reported. BOBCAT PROJECT FILES o https://fbb-git.gitlab.io/bobcat/: gitlab project page; o bobcat_6.02.02-x.dsc: detached signature; o bobcat_6.02.02-x.tar.gz: source archive; o bobcat_6.02.02-x_i386.changes: change log; o libbobcat1_6.02.02-x_*.deb: debian package containing the libraries; o libbobcat1-dev_6.02.02-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). libbobcat-dev_6.02.02 2005-2022 FBB::IOStream(3bobcat)