regina::CompressionStream Class Reference
Utilities

An output stream that compresses data as it is written. More...

`#include <utilities/zstream.h>`

Inheritance diagram for regina::CompressionStream:

## Public Member Functions

| CompressionStream ()
| Creates a new compression stream. More...
| CompressionStream (const char *path)
| Creates a new compression stream that writes to the given file. More...
int | open (const char *path)
| Opens the given file for compressed writing. More...
int | close ()
| Closes the underlying file. More...

## Detailed Description

An output stream that compresses data as it is written.

The standard zlib compression library is used.

This stream does its work through a CompressionBuffer.

Python:
  Not present.

## Constructor & Destructor Documentation

regina::CompressionStream::CompressionStream | ( |  | ) |

inline

Creates a new compression stream.

regina::CompressionStream::CompressionStream | ( | const char * | path | ) |

inline

Creates a new compression stream that writes to the given file.

The underlying file will be opened automatically.

Internationalisation:
  This routine makes no assumptions about the character encoding used in the given file name, and simply passes it through unchanged to low-level C/C++ file I/O routines.

Parameters

  path | the pathname of the new file to open.

## Member Function Documentation

int regina::CompressionStream::close | ( |  | ) |

inline

Closes the underlying file.

If no file is open, this routine does nothing.

Returns
  0 on success, or ZBuffer::zEOF on error.

int regina::CompressionStream::open | ( | const char * | path | ) |

inline

Opens the given file for compressed writing.

If a file is already open, it will be closed before the new file is opened.

Internationalisation:
  This routine makes no assumptions about the character encoding used in the given file name, and simply passes it through unchanged to low-level C/C++ file I/O routines.

Parameters

  path | the pathname of the new file to open.

Returns
  0 on success, or ZBuffer::zEOF on error.

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

- utilities/zstream.h

Copyright © 1999-2013, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).