|
Boost : |
From: scleary_at_[hidden]
Date: 2000-05-30 11:28:33
> I did not understand exactly what your classes do. Are you putting
> standard interfaces around some machine specific code? Like, putting
> a basic_streambuf wrapper around Win32 file handles? If this is the
> case, I am very interested to look at your work.
Yes. All the "glue" classes do is take one published interface (i.e.,
HANDLE + ReadFile + WriteFile) and transform it into another (i.e., stream
objects + operator>> + operator<<).
As Dietmar pointed out, these may be considered a subset of general I/O
adapters. In fact, his collection sounds much more complete. :)
Also, my "glue" classes have only been used in a handful of situations, and
I really didn't know what I was doing when I wrote them. In other words,
they should probably be reviewed by someone who knows more about extending
the I/O stream classes.
My "glue" classes are just that -- glue. By that I mean that my FILEstream
does *not* provide facilities for opening/closing files. These classes were
written expecting that you already had a FILE * (from legacy code) that you
wanted to treat as a stream. That is to say that my glue classes are not
complete, but just provide what is necessary to "make it work".
That said, I've put what I have in the files, under "IO glue". Of these, I
expect:
. FILEStream to be replaced with what Dietmar has, which is probably more
complete
. error_errno to go into another library or possibly disappear (not I/O
related)
. HANDLEStream and VCLStream to possibly be enhanced, then merged with
what Dietmar has
. FILEiter I don't know -- possibly disappear. I only wrote it in the
first place because I was writing a *very* small program that just
transformed a character stream, and the overhead of the C++ stream libraries
doubled the executable size.
-Steve
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk