C# Class SharpGIS.ZLib.ZlibCodec

Encoder and Decoder for ZLIB and DEFLATE (IETF RFC1950 and RFC1951).
This class compresses and decompresses data according to the Deflate algorithm and optionally, the ZLIB format, as documented in RFC 1950 - ZLIB and RFC 1951 - DEFLATE.
Afficher le fichier Open project: sozialhelden/wheelmap-wp7 Class Usage Examples

Méthodes publiques

Свойство Type Description
AvailableBytesIn int
AvailableBytesOut int
InputBuffer byte[]
Message System.String
NextIn int
NextOut int
OutputBuffer byte[]
TotalBytesIn long
TotalBytesOut long
WindowBits int

Méthodes publiques

Méthode Description
EndInflate ( ) : int

Ends an inflation session.

Call this after successively calling Inflate(). This will cause all buffers to be flushed. After calling this you cannot call Inflate() without a intervening call to one of the InitializeInflate() overloads.

Inflate ( FlushType flush ) : int

Inflate the data in the InputBuffer, placing the result in the OutputBuffer.

You must have set InputBuffer and OutputBuffer, NextIn and NextOut, and AvailableBytesIn and AvailableBytesOut before calling this method.

InitializeInflate ( ) : int

Initialize the inflation state.

It is not necessary to call this before using the ZlibCodec to inflate data; It is implicitly called when you call the constructor.

InitializeInflate ( bool expectRfc1950Header ) : int

Initialize the inflation state with an explicit flag to govern the handling of RFC1950 header bytes.

By default, the ZLIB header defined in RFC 1950 is expected. If you want to read a zlib stream you should specify true for expectRfc1950Header. If you have a deflate stream, you will want to specify false. It is only necessary to invoke this initializer explicitly if you want to specify false.

InitializeInflate ( int windowBits ) : int

Initialize the ZlibCodec for inflation, with the specified number of window bits.

InitializeInflate ( int windowBits, bool expectRfc1950Header ) : int

Initialize the inflation state with an explicit flag to govern the handling of RFC1950 header bytes.

If you want to read a zlib stream you should specify true for expectRfc1950Header. In this case, the library will expect to find a ZLIB header, as defined in RFC 1950, in the compressed stream. If you will be reading a DEFLATE or GZIP stream, which does not have such a header, you will want to specify false.

SetDictionary ( byte dictionary ) : int

Set the dictionary to be used for either Inflation or Deflation.

SyncInflate ( ) : int

I don't know what this does!

ZlibCodec ( ) : System

Create a ZlibCodec that decompresses.

Method Details

EndInflate() public méthode

Ends an inflation session.
Call this after successively calling Inflate(). This will cause all buffers to be flushed. After calling this you cannot call Inflate() without a intervening call to one of the InitializeInflate() overloads.
public EndInflate ( ) : int
Résultat int

Inflate() public méthode

Inflate the data in the InputBuffer, placing the result in the OutputBuffer.
You must have set InputBuffer and OutputBuffer, NextIn and NextOut, and AvailableBytesIn and AvailableBytesOut before calling this method.
public Inflate ( FlushType flush ) : int
flush FlushType The flush to use when inflating.
Résultat int

InitializeInflate() public méthode

Initialize the inflation state.
It is not necessary to call this before using the ZlibCodec to inflate data; It is implicitly called when you call the constructor.
public InitializeInflate ( ) : int
Résultat int

InitializeInflate() public méthode

Initialize the inflation state with an explicit flag to govern the handling of RFC1950 header bytes.
By default, the ZLIB header defined in RFC 1950 is expected. If you want to read a zlib stream you should specify true for expectRfc1950Header. If you have a deflate stream, you will want to specify false. It is only necessary to invoke this initializer explicitly if you want to specify false.
public InitializeInflate ( bool expectRfc1950Header ) : int
expectRfc1950Header bool whether to expect an RFC1950 header byte /// pair when reading the stream of data to be inflated.
Résultat int

InitializeInflate() public méthode

Initialize the ZlibCodec for inflation, with the specified number of window bits.
public InitializeInflate ( int windowBits ) : int
windowBits int The number of window bits to use. If you need to ask what that is, /// then you shouldn't be calling this initializer.
Résultat int

InitializeInflate() public méthode

Initialize the inflation state with an explicit flag to govern the handling of RFC1950 header bytes.
If you want to read a zlib stream you should specify true for expectRfc1950Header. In this case, the library will expect to find a ZLIB header, as defined in RFC 1950, in the compressed stream. If you will be reading a DEFLATE or GZIP stream, which does not have such a header, you will want to specify false.
public InitializeInflate ( int windowBits, bool expectRfc1950Header ) : int
windowBits int The number of window bits to use. If you need to ask what that is, /// then you shouldn't be calling this initializer.
expectRfc1950Header bool whether to expect an RFC1950 header byte pair when reading /// the stream of data to be inflated.
Résultat int

SetDictionary() public méthode

Set the dictionary to be used for either Inflation or Deflation.
public SetDictionary ( byte dictionary ) : int
dictionary byte The dictionary bytes to use.
Résultat int

SyncInflate() public méthode

I don't know what this does!
public SyncInflate ( ) : int
Résultat int

ZlibCodec() public méthode

Create a ZlibCodec that decompresses.
public ZlibCodec ( ) : System
Résultat System

Property Details

AvailableBytesIn public_oe property

The number of bytes available in the InputBuffer, starting at NextIn.
Generally you should set this to InputBuffer.Length before the first Inflate() or Deflate() call. The class will update this number as calls to Inflate/Deflate are made.
public int AvailableBytesIn
Résultat int

AvailableBytesOut public_oe property

The number of bytes available in the OutputBuffer, starting at NextOut.
Generally you should set this to OutputBuffer.Length before the first Inflate() or Deflate() call. The class will update this number as calls to Inflate/Deflate are made.
public int AvailableBytesOut
Résultat int

InputBuffer public_oe property

The buffer from which data is taken.
public byte[] InputBuffer
Résultat byte[]

Message public_oe property

used for diagnostics, when something goes wrong!
public String,System Message
Résultat System.String

NextIn public_oe property

An index into the InputBuffer array, indicating where to start reading.
public int NextIn
Résultat int

NextOut public_oe property

An index into the OutputBuffer array, indicating where to start writing.
public int NextOut
Résultat int

OutputBuffer public_oe property

Buffer to store output data.
public byte[] OutputBuffer
Résultat byte[]

TotalBytesIn public_oe property

Total number of bytes read so far, through all calls to Inflate()/Deflate().
public long TotalBytesIn
Résultat long

TotalBytesOut public_oe property

Total number of bytes written to the output so far, through all calls to Inflate()/Deflate().
public long TotalBytesOut
Résultat long

WindowBits public_oe property

The number of Window Bits to use.
This gauges the size of the sliding window, and hence the compression effectiveness as well as memory consumption. It's best to just leave this setting alone if you don't know what it is. The maximum value is 15 bits, which implies a 32k window.
public int WindowBits
Résultat int