DOKK / manpages / debian 12 / libbobcat-dev / ifdstream.3bobcat.en
FBB::IFdStream(3bobcat) File Descriptor Input Stream FBB::IFdStream(3bobcat)

FBB::Ifdstream - Input Stream initialized by a File Descriptor

#include <bobcat/ifdstream>

FBB::IFdStream objects may be used to extract information from a device whose file descriptor is available.

File descriptors are not defined within the context of C++, but they can be used on operating systems that support the concept. Realize that using file descriptors introduces operating system dependencies.

Note that sockets can be used as file descriptors.

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

std::istream

IFdStream(int fd, size_t n = 1):
The constructor initializes the object to read from descriptor fd, using a buffer of size n, by default having size 1.

Copy and move constructors (and assignment operators) are not available.

All members of std::istream are available, as FBB::IFdStream inherits from this class. There are no additional members.

See the clientsocket(3bobcat) man-page for an example showing how to use IFdStream.

bobcat/ifdstream - defines the class interface

bobcat(7), ifdbuf(3bobcat), ofdstream(3bobcat)

The IFdStream object uses a IFdStreamBuf for its std::streambuf. This buffer is associated with the file descriptor passed to IFdStream’s constructor. When the IFdStream object goes out of scope the device (file, socket, etc.) to which the file descriptor that was passed to IFdStream’s constructor is not closed.

https://fbb-git.gitlab.io/bobcat/: gitlab project page;
bobcat_6.02.02-x.dsc: detached signature;
bobcat_6.02.02-x.tar.gz: source archive;
bobcat_6.02.02-x_i386.changes: change log;
libbobcat1_6.02.02-x_*.deb: debian package containing the libraries;
libbobcat1-dev_6.02.02-x_*.deb: debian package containing the libraries, headers and manual pages;

Bobcat is an acronym of `Brokken’s Own Base Classes And Templates’.

This is free software, distributed under the terms of the GNU General Public License (GPL).

Frank B. Brokken (f.b.brokken@rug.nl).

2005-2022 libbobcat-dev_6.02.02