Project

General

Profile

« Previous | Next » 

Revision e1e1d7c1

Added by skyjake almost 12 years ago

Refactor|libdeng2: Files are I/O streams instead of byte arrays

IIOStream is an interface that provides access to an object through
a stream of bytes.

Changed the interface of de::File, the base class for all files,
from IByteArray to IIOStream. While many files are byte array based,
there are also other kinds of files that behave like streams
(cf. UNIX sockets, character devices).

Added ByteArrayFile: an abstract base class for random-access byte
array based files, where the I/O stream has a default implementation
that accesses the file's contents (as a byte array).

Block, Writer, and Reader constructors accept I/O streams as
source/destination objects.

Refactored Reader's rewind mechanism to work also with streams.

Applied the pimpl idiom in Reader, Writer, and ArchiveFeed.

Updated the rest of libdeng2 accordingly.

Files

  • added
  • modified
  • copied
  • renamed
  • deleted

View differences