# zlib_stream::basic_unzip_streambuf< charT, traits > Class Template Reference

A stream decorator that takes compressed input and unzips it to a istream. More...

`#include <zipstreamimpl.h>`

Inheritance diagram for zlib_stream::basic_unzip_streambuf< charT, traits >:
[legend]
Collaboration diagram for zlib_stream::basic_unzip_streambuf< charT, traits >:
[legend]

List of all members.

## Public Types

typedef byte_type * | byte_buffer_type
typedef unsigned char | byte_type
typedef std::vector< byte_type > | byte_vector_type
typedef charT | char_type
typedef std::vector< char_type > | char_vector_type
typedef int | int_type
typedef std::basic_istream < charT, traits > & | istream_reference

## Public Member Functions

| basic_unzip_streambuf (istream_reference istream, int window_size, size_t read_buffer_size, size_t input_buffer_size)
| ~basic_unzip_streambuf (void)
unsigned long | get_crc (void) const
long | get_in_size (void) const
istream_reference | get_istream (void)
| returns the compressed input istream
long | get_out_size (void) const
int | get_zerr (void) const
z_stream & | get_zip_stream (void)
int_type | underflow (void)

## Detailed Description

### template<class charT, class traits = std::char_traits<charT>>
class zlib_stream::basic_unzip_streambuf< charT, traits >

A stream decorator that takes compressed input and unzips it to a istream.

The class wraps up the deflate method of the zlib library 1.1.4 http://www.gzip.org/zlib/

## Member Typedef Documentation

template<class charT , class traits = std::char_traits<charT>>

typedef byte_type* zlib_stream::basic_unzip_streambuf< charT, traits >::byte_buffer_type

template<class charT , class traits = std::char_traits<charT>>

typedef unsigned char zlib_stream::basic_unzip_streambuf< charT, traits >::byte_type

template<class charT , class traits = std::char_traits<charT>>

typedef std::vector<byte_type> zlib_stream::basic_unzip_streambuf< charT, traits >::byte_vector_type

template<class charT , class traits = std::char_traits<charT>>

typedef charT zlib_stream::basic_unzip_streambuf< charT, traits >::char_type

template<class charT , class traits = std::char_traits<charT>>

typedef std::vector<char_type> zlib_stream::basic_unzip_streambuf< charT, traits >::char_vector_type

template<class charT , class traits = std::char_traits<charT>>

typedef int zlib_stream::basic_unzip_streambuf< charT, traits >::int_type

template<class charT , class traits = std::char_traits<charT>>

typedef std::basic_istream<charT,traits>& zlib_stream::basic_unzip_streambuf< charT, traits >::istream_reference

Reimplemented in zlib_stream::basic_zip_istream< charT, traits >.

## Constructor & Destructor Documentation

template<class charT , class traits = std::char_traits<charT>>

zlib_stream::basic_unzip_streambuf< charT, traits >::basic_unzip_streambuf | ( | istream_reference | istream,
|  | int | window_size,
|  | size_t | read_buffer_size,
|  | size_t | input_buffer_size |
| ) |  |  |

Construct a unzip stream More info on the following parameters can be found in the zlib documentation.

template<class charT , class traits = std::char_traits<charT>>

zlib_stream::basic_unzip_streambuf< charT, traits >::~basic_unzip_streambuf | ( | void |  | ) |

## Member Function Documentation

template<class charT , class traits = std::char_traits<charT>>

unsigned long zlib_stream::basic_unzip_streambuf< charT, traits >::get_crc | ( | void |  | ) | const`[inline]`

template<class charT , class traits = std::char_traits<charT>>

long zlib_stream::basic_unzip_streambuf< charT, traits >::get_in_size | ( | void |  | ) | const`[inline]`

template<class charT , class traits = std::char_traits<charT>>

istream_reference zlib_stream::basic_unzip_streambuf< charT, traits >::get_istream | ( | void |  | ) | `[inline]`

returns the compressed input istream

template<class charT , class traits = std::char_traits<charT>>

long zlib_stream::basic_unzip_streambuf< charT, traits >::get_out_size | ( | void |  | ) | const`[inline]`

template<class charT , class traits = std::char_traits<charT>>

int zlib_stream::basic_unzip_streambuf< charT, traits >::get_zerr | ( | void |  | ) | const`[inline]`

template<class charT , class traits = std::char_traits<charT>>

z_stream& zlib_stream::basic_unzip_streambuf< charT, traits >::get_zip_stream | ( | void |  | ) | `[inline]`

template<class charT , class traits = std::char_traits<charT>>

int_type zlib_stream::basic_unzip_streambuf< charT, traits >::underflow | ( | void |  | ) |

The documentation for this class was generated from the following file:

- zipstreamimpl.h