diff options
Diffstat (limited to 'decoder.h')
-rw-r--r-- | decoder.h | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -192,6 +192,8 @@ public: class LZ_decoder { + const long long outskip; + const long long outend; long long partial_data_pos; const int dictionary_size; const int buffer_size; @@ -203,6 +205,8 @@ class LZ_decoder const int member_version; Range_decoder & range_decoder; + long long stream_position() const throw() + { return partial_data_pos + stream_pos; } void flush_data(); bool verify_trailer( const Pretty_print & pp ) const; @@ -243,8 +247,11 @@ class LZ_decoder } public: - LZ_decoder( const File_header & header, Range_decoder & rdec, const int ofd ) + LZ_decoder( const File_header & header, Range_decoder & rdec, const int ofd, + const long long oskip = 0, const long long oend = LLONG_MAX ) : + outskip( oskip ), + outend( oend ), partial_data_pos( 0 ), dictionary_size( header.dictionary_size() ), buffer_size( std::max( 65536, dictionary_size ) ), |