libzipper 1.0.1
Classes | Typedefs | Enumerations | Functions | Variables
zipper Namespace Reference

The zipper namespace contains the libzipper public API. More...

Classes

struct  Container
class  Exception
 Base class for all exceptions thrown by libzipper. More...
class  FormatException
 Exception thrown when the input data does not match the expected Container format. More...
class  IOException
 Exception thrown when a Reader or Writer instance is unable to satisfy an IO request due to an external error. More...
class  UnsupportedException
 Exception thrown when an operation is requested on a compressed archive that libzipper does not implement. More...
class  Reader
 Reader supplies input data to the compression/decompression functions. More...
class  FileReader
 FileReader is a file-based implementation of the Reader interface. More...
class  Writer
 Writer accepts output data from the compression/decompression functions. More...
class  FileWriter
 FileWrter is a file-based implementation of the Writer interface. More...
class  CompressedFile
 CompressedFile represents an entry within a compressed archive. More...
class  Decompressor
 Decompressor detects the compressed archive type of the data, and creates suitable CompressedFile instances to access the compressed data. More...
class  Compressor
 Compressor creates a compressed archive from the supplied Reader objects. data. More...

Typedefs

typedef uint64_t zsize_t
typedef std::shared_ptr< ReaderReaderPtr
typedef std::shared_ptr< WriterWriterPtr
typedef std::shared_ptr
< CompressedFile
CompressedFilePtr

Enumerations

enum  ContainerFormat {
  Container_begin = 0, Container_none = 0, Container_zip, Container_gzip,
  Container_end
}

Functions

const ContainergetContainer (ContainerFormat format)
 Returns the capability details of the given format.

Variables

const timeval s_now
 When passed as a method parameter, it requests that the current time be used instead.

Detailed Description

The zipper namespace contains the libzipper public API.


Typedef Documentation

A shared pointer to a CompressedFile

Definition at line 514 of file zipper.hh.

A shared pointer to a Reader

Definition at line 373 of file zipper.hh.

A shared pointer to a Writer

Definition at line 410 of file zipper.hh.

zsize_t should be used exclusively when dealing with file offsets and sizes to support large files (>4Gb).

Unlike size_t on some systems, zsize_t will be 64bit when compiling for a 32bit target.

Definition at line 152 of file zipper.hh.


Enumeration Type Documentation

ContainerFormat enumerates the compressed archive formats supported by libzipper.

An application can determine the supported formats by iterating over the Container_begin to Container_end range. eg.

 for (int i = Container_begin; i < Container_end; ++i)
 {
     const Container& container(getContainer(ContainerFormat(i)));
 }
Enumerator:
Container_begin 

Iteration marker.

Container_none 

No container (eg. plain text)

Container_zip 

ZIP.

Container_gzip 

gzip.

Container_end 

Iteration marker.

Definition at line 166 of file zipper.hh.