# Poco

# class InflatingOutputStream

Library: Foundation
Package: Streams
Header: Poco/InflatingStream.h

## Description

This stream decompresses all data passing through it using zlib's inflate algorithm.

After all data has been written to the stream, close() must be called to ensure completion of decompression.

## Inheritance

Direct Base Classes: std::ostream, InflatingIOS

All Base Classes: InflatingIOS, std::ios, std::ostream

## Member Summary

Member Functions: close

Inherited Functions: rdbuf

## Constructors

### InflatingOutputStream

InflatingOutputStream(
std::ostream & ostr,
InflatingStreamBuf::StreamType type = InflatingStreamBuf::STREAM_ZLIB
);

Creates an InflatingOutputStream for expanding the compressed data passed through and forwarding it to the given output stream.

### InflatingOutputStream

InflatingOutputStream(
std::ostream & ostr,
int windowBits
);

Creates an InflatingOutputStream for expanding the compressed data passed through and forwarding it to the given output stream.

Please refer to the zlib documentation of inflateInit2() for a description of the windowBits parameter.

## Destructor

### ~InflatingOutputStream

~InflatingOutputStream() override;

Destroys the InflatingOutputStream.

## Member Functions

### close

int close();

Finishes up the stream.

Must be called to ensure all data is properly written to the target output stream.