2 * This library is free software; you can redistribute it and/or
3 * modify it under the terms of the GNU Lesser General Public
4 * License as published by the Free Software Foundation; either
5 * version 2.1 of the License, or (at your option) any later version.
7 * This library is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
10 * Lesser General Public License for more details.
12 * You should have received a copy of the GNU Lesser General Public
13 * License along with this library; if not, write to the Free Software
14 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 * binwrap.h - Binary I/O wrapper, using standard iostreams library
17 * Copyright (C) 2002, 2003 Simon Peter <dn.tlp@gmx.net>
20 #ifndef H_BINIO_BINWRAP
21 #define H_BINIO_BINWRAP
25 #if BINIO_ENABLE_IOSTREAM
41 class biniwstream: public binistream
44 biniwstream(istream *istr);
45 virtual ~biniwstream();
47 virtual void seek(long pos, Offset offs = Set);
51 virtual Byte getByte();
57 class binowstream: public binostream
60 binowstream(ostream *ostr);
61 virtual ~binowstream();
63 virtual void seek(long pos, Offset offs = Set);
67 virtual void putByte(Byte b);
73 class binwstream: public biniwstream, public binowstream
76 binwstream(iostream *str);
77 virtual ~binwstream();
79 virtual void seek(long pos, Offset offs = Set);
83 virtual Byte getByte();
84 virtual void putByte(Byte b);