/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * 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 . */ #ifndef __com_sun_star_packages_zip_ZipConstants_idl__ #define __com_sun_star_packages_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 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */