Differences From Artifact [dc92d91526]:
- File src/OFGZIPStream.h — part of check-in [7c3f557d94] at 2016-04-23 19:55:20 on branch trunk — Add OFGZIPStream (user: js, size: 2272) [annotate] [blame] [check-ins using]
To Artifact [68e8c128bc]:
- File
src/OFGZIPStream.h
— part of check-in
[134a1121c7]
at
2016-05-29 13:02:05
on branch trunk
— Rename OFInflateStream back to OFDeflateStream
The reason for renaming to OFInflateStream was to have one stream for
decompression and one for compression in order to reduce memory usage if
only one of the two is needed, as the ivar layout will be smaller then.
However, it is more consistent with other stream classes to have one
stream that can handle both. The increased memory footprint of having
ivars for compression and decompression can be solved by having a
pointer to those instead. This will not incur any performance penalty,
as the pointer will be dereferenced instead of the ivars, meaning the
overhead is only getting the pointer from the ivars once. (user: js, size: 2272) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
13 14 15 16 17 18 19 | * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import "OFStream.h" #import "OFDate.h" | | | | 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import "OFStream.h" #import "OFDate.h" @class OFDeflateStream; OF_ASSUME_NONNULL_BEGIN @interface OFGZIPStream: OFStream { OFStream *_stream; OFDeflateStream *_inflateStream; enum { OF_GZIP_STREAM_ID1, OF_GZIP_STREAM_ID2, OF_GZIP_STREAM_COMPRESSION_METHOD, OF_GZIP_STREAM_FLAGS, OF_GZIP_STREAM_MODIFICATION_TIME, OF_GZIP_STREAM_EXTRA_FLAGS, |
︙ | ︙ |