blob: a6301e32f268ea3782de866d48dd2b56bb6435d2 [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef __com_sun_star_package_zip_ZipConstants_idl__
#define __com_sun_star_package_zip_ZipConstants_idl__
//=============================================================================
module com { module sun { module star { module packages { module zip {
//=============================================================================
/** defines the constants used by the ZIP interfaces.
*/
published constants ZipConstants
{
//-------------------------------------------------------------------------
/** Compression method for the deflate algorithm (the only one currently
supported).
*/
const short DEFLATED = 8;
//-------------------------------------------------------------------------
/** Compression level for no compression.
*/
const short NO_COMPRESSION = 0;
//-------------------------------------------------------------------------
/** Compression level for fastest compression
*/
const short BEST_SPEED = 1;
//-------------------------------------------------------------------------
/** Compression level for best compression
*/
const short BEST_COMPRESSION = 9;
//-------------------------------------------------------------------------
/** Default compression level.
*/
const short DEFAULT_COMPRESSION = -1;
//-------------------------------------------------------------------------
/** Compression strategy best used for data consisting mostly of small
values with a somewhat random distribution. Forces more Huffman
coding and less string matching.
*/
const short FILTERED = 1;
//-------------------------------------------------------------------------
/** Compression strategy for Huffman coding only.
*/
const short HUFFMAN_ONLY = 2;
//-------------------------------------------------------------------------
/** Default compression strategy
*/
const short DEFAULT_STRATEGY = 0;
//-------------------------------------------------------------------------
/** entry is uncompressed
*/
const short STORED = 0;
//-------------------------------------------------------------------------
/** entry is uncompressed
*/
const short DEF_MEM_LEVEL = 8;
//-------------------------------------------------------------------------
/** Header Signature: "PK\003\004"
*/
const long LOCSIG = 0x04034b50;
//-------------------------------------------------------------------------
/** Header Signature: "PK\007\008"
*/
const long EXTSIG = 0x08074b50;
//-------------------------------------------------------------------------
/** Header Signature: "PK\001\002"
*/
const long CENSIG = 0x02014b50;
//-------------------------------------------------------------------------
/** Header Signature: "PK\005\006"
*/
const long ENDSIG = 0x06054b50;
//-------------------------------------------------------------------------
/** Header Signature: "PK\007\008"
*/
const long SPANSIG = 0x08074b50;
//-------------------------------------------------------------------------
/** LOC header size in bytes (including signatures)
*/
const short LOCHDR = 30;
//-------------------------------------------------------------------------
/** EXT header size in bytes (including signatures)
*/
const short EXTHDR = 16;
//-------------------------------------------------------------------------
/** CEN header size in bytes (including signatures)
*/
const short CENHDR = 46;
//-------------------------------------------------------------------------
/** END header size in bytes (including signatures)
*/
const short ENDHDR = 22;
//-------------------------------------------------------------------------
/// LOC LOC LOC
/** LOC header field "version needed to extract" offset
*/
const short LOCVER = 4;
//-------------------------------------------------------------------------
/** LOC header field "general purpose bit flags" offset
*/
const short LOCFLG = 6;
//-------------------------------------------------------------------------
/** LOC header field "compression method" offset
*/
const short LOCHOW = 8;
//-------------------------------------------------------------------------
/** LOC header field "modification time" offset
*/
const short LOCTIM = 10;
//-------------------------------------------------------------------------
/** LOC header field "crc of uncompressed data" offset
*/
const short LOCCRC = 14;
//-------------------------------------------------------------------------
/** LOC header field "compressed data size" offset
*/
const short LOCSIZ = 18;
//-------------------------------------------------------------------------
/** LOC header field "uncompressed data size" offset
*/
const short LOCLEN = 22;
//-------------------------------------------------------------------------
/** LOC header field "filename length" offset
*/
const short LOCNAM = 26;
//-------------------------------------------------------------------------
/** LOC header field "extra field length" offset
*/
const short LOCEXT = 28;
//-------------------------------------------------------------------------
/** EXT header field "crc of uncompressed data" offsets
*/
const short EXTCRC = 4;
//-------------------------------------------------------------------------
/** EXT header field "compressed size" offsets
*/
const short EXTSIZ = 8;
//-------------------------------------------------------------------------
/** EXT header field "uncompressed size" offsets
*/
const short EXTLEN = 12;
//-------------------------------------------------------------------------
/** CEN header field "version made by" offset
*/
const short CENVEM = 4;
//-------------------------------------------------------------------------
/** CEN header field "version needed to extract" offset
*/
const short CENVER = 6;
//-------------------------------------------------------------------------
/** CEN header field "general purpose bit flags" offset
*/
const short CENFLG = 8;
//-------------------------------------------------------------------------
/** CEN header field "compression method" offset
*/
const short CENHOW = 10;
//-------------------------------------------------------------------------
/** CEN header field "modification time" offset
*/
const short CENTIM = 12;
//-------------------------------------------------------------------------
/** CEN header field "modification time" offset
*/
const short CENDAT = 14;
//-------------------------------------------------------------------------
/** CEN header field "crc of uncompressed data" offset
*/
const short CENCRC = 16;
//-------------------------------------------------------------------------
/** CEN header field "compressed size" offset
*/
const short CENSIZ = 20;
//-------------------------------------------------------------------------
/** CEN header field "uncompressed size" offset
*/
const short CENLEN = 24;
//-------------------------------------------------------------------------
/** CEN header field "length of filename" offset
*/
const short CENNAM = 28;
//-------------------------------------------------------------------------
/** CEN header field "length of extra field" offset
*/
const short CENEXT = 30;
//-------------------------------------------------------------------------
/** CEN header field "file comment length" offset
*/
const short CENCOM = 32;
//-------------------------------------------------------------------------
/** CEN header field "disk number start" offset
*/
const short CENDSK = 34;
//-------------------------------------------------------------------------
/** CEN header field "internal file attributes" offset
*/
const short CENATT = 36;
//-------------------------------------------------------------------------
/** CEN header field "external file attributes" offset
*/
const short CENATX = 38;
//-------------------------------------------------------------------------
/** CEN header field "offset of local header" offset
*/
const short CENOFF = 42;
//-------------------------------------------------------------------------
/** END header field "number of entries on this disk" offset
*/
const short ENDSUB = 8;
//-------------------------------------------------------------------------
/** END header field "total number of entries" offset
*/
const short ENDTOT = 10;
//-------------------------------------------------------------------------
/** END header field "central directory size" offset
*/
const short ENDSIZ = 12;
//-------------------------------------------------------------------------
/** END header field "central directory offset" offset
*/
const short ENDOFF = 16;
//-------------------------------------------------------------------------
/** END header field "size of zip file comment" offset
*/
const short ENDCOM = 20;
};
//=============================================================================
}; }; }; }; };
#endif