libzypp
13.10.6
|
Streambuffer reading or writing gzip files. More...
#include <GzStream.h>
Public Member Functions | |
fgzstreambuf (unsigned bufferSize_r=512) | |
virtual | ~fgzstreambuf () |
bool | isOpen () const |
bool | inReadMode () const |
bool | inWriteMode () const |
fgzstreambuf * | open (const char *name_r, std::ios_base::openmode mode_r=std::ios_base::in) |
fgzstreambuf * | close () |
pos_type | compressed_tell () const |
Tell the file position in the compressed file. More... | |
ZlibError | zError () const |
The last error returned fron zlib. More... | |
Protected Member Functions | |
virtual int | sync () |
virtual int_type | overflow (int_type c=traits_type::eof()) |
virtual int_type | underflow () |
virtual pos_type | seekoff (off_type off_r, std::ios_base::seekdir way_r, std::ios_base::openmode) |
virtual pos_type | seekpos (pos_type pos_r, std::ios_base::openmode) |
Private Types | |
typedef std::vector< char > | buffer_type |
Private Member Functions | |
void | setZError () |
std::streamsize | zReadTo (char *buffer_r, std::streamsize maxcount_r) |
bool | zWriteFrom (const char *buffer_r, std::streamsize count_r) |
pos_type | zSeekTo (off_type off_r, std::ios_base::seekdir way_r) |
pos_type | zTell () |
pos_type | seekTo (off_type off_r, std::ios_base::seekdir way_r) |
Private Attributes | |
int | _fd |
file descriptor of the compressed file More... | |
gzFile | _file |
std::ios_base::openmode | _mode |
buffer_type | _buffer |
ZlibError | _error |
Streambuffer reading or writing gzip files.
Read and write mode are mutual exclusive. Seek is supported, but zlib restrictions appy (only forward seek in write mode; backward seek in read mode might be expensive).Putback is not supported.
Reading plain (no gziped) files is possible as well.
This streambuf is used in ifgzstream and ofgzstream.
Definition at line 86 of file GzStream.h.
|
private |
Definition at line 151 of file GzStream.h.
|
inline |
Definition at line 90 of file GzStream.h.
|
inlinevirtual |
Definition at line 98 of file GzStream.h.
|
inline |
Definition at line 102 of file GzStream.h.
|
inline |
Definition at line 106 of file GzStream.h.
|
inline |
Definition at line 110 of file GzStream.h.
fgzstreambuf * zypp::gzstream_detail::fgzstreambuf::open | ( | const char * | name_r, |
std::ios_base::openmode | mode_r = std::ios_base::in |
||
) |
Definition at line 74 of file GzStream.cc.
fgzstreambuf * zypp::gzstream_detail::fgzstreambuf::close | ( | ) |
Definition at line 120 of file GzStream.cc.
fgzstreambuf::pos_type zypp::gzstream_detail::fgzstreambuf::compressed_tell | ( | ) | const |
Tell the file position in the compressed file.
Analogous to tell(2), complementary to gztell.
Definition at line 352 of file GzStream.cc.
|
inline |
The last error returned fron zlib.
Definition at line 127 of file GzStream.h.
|
protectedvirtual |
Definition at line 156 of file GzStream.cc.
|
protectedvirtual |
Definition at line 173 of file GzStream.cc.
|
protectedvirtual |
Definition at line 202 of file GzStream.cc.
|
inlineprotectedvirtual |
Definition at line 142 of file GzStream.h.
|
inlineprotectedvirtual |
Definition at line 146 of file GzStream.h.
|
inlineprivate |
Definition at line 167 of file GzStream.h.
|
private |
Definition at line 232 of file GzStream.cc.
|
private |
Definition at line 246 of file GzStream.cc.
|
private |
Definition at line 263 of file GzStream.cc.
|
private |
Definition at line 277 of file GzStream.cc.
|
private |
Definition at line 291 of file GzStream.cc.
|
private |
file descriptor of the compressed file
Definition at line 154 of file GzStream.h.
|
private |
Definition at line 156 of file GzStream.h.
|
private |
Definition at line 158 of file GzStream.h.
|
private |
Definition at line 160 of file GzStream.h.
|
private |
Definition at line 162 of file GzStream.h.