/************************************************************** * * 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