18 #include "pandabase.h" 19 #include "subStreamBuf.h" 20 #include "streamWrapper.h" 37 INLINE ISubStream(
IStreamWrapper *source, streampos start, streampos end);
39 INLINE ISubStream &open(
IStreamWrapper *source, streampos start, streampos end);
40 INLINE ISubStream &close();
61 INLINE OSubStream(
OStreamWrapper *dest, streampos start, streampos end,
bool append =
false);
63 INLINE OSubStream &open(
OStreamWrapper *dest, streampos start, streampos end,
bool append =
false);
64 INLINE OSubStream &close();
75 class EXPCL_PANDAEXPRESS
SubStream :
public iostream {
78 INLINE SubStream(
StreamWrapper *nested, streampos start, streampos end,
bool append =
false);
80 INLINE SubStream &open(
StreamWrapper *nested, streampos start, streampos end,
bool append =
false);
81 INLINE SubStream &close();
87 #include "subStream.I" This class provides a locking wrapper around a combination ostream/istream pointer.
An istream object that presents a subwindow into another istream.
This class provides a locking wrapper around an arbitrary istream pointer.
The streambuf object that implements ISubStream.
An ostream object that presents a subwindow into another ostream.
This class provides a locking wrapper around an arbitrary ostream pointer.
Combined ISubStream and OSubStream for bidirectional I/O.