Warning, file /office/calligra/libs/store/KoLZF.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* This file is part of the KDE project 0002 Copyright (C) 2005-2006 Ariya Hidayat <ariya@kde.org> 0003 Copyright (C) 2015 Friedrich W. H. Kossebau <kossebau@kde.org> 0004 0005 This library is free software; you can redistribute it and/or 0006 modify it under the terms of the GNU Library General Public 0007 License as published by the Free Software Foundation; either 0008 version 2 of the License, or (at your option) any later version. 0009 0010 This library is distributed in the hope that it will be useful, 0011 but WITHOUT ANY WARRANTY; without even the implied warranty of 0012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 0013 Library General Public License for more details. 0014 0015 You should have received a copy of the GNU Library General Public License 0016 along with this library; see the file COPYING.LIB. If not, write to 0017 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 0018 Boston, MA 02110-1301, USA. 0019 */ 0020 0021 #ifndef KO_LZF_H 0022 #define KO_LZF_H 0023 0024 class QByteArray; 0025 0026 namespace KoLZF 0027 { 0028 0029 /** 0030 * @param input where to read the data to compress from 0031 * @param length length of the input 0032 * @param output where to write the compressed data to 0033 * @param maxout maximal usable length of output, needs to be at least 2 bytes 0034 * @return the length of data written to output, or, on failure, 0 0035 */ 0036 int compress(const void* input, int length, void* output, int maxout); 0037 0038 /** 0039 * @param input where to read the data to decompress from 0040 * @param length length of the input 0041 * @param output where to write the decompressed data to 0042 * @param maxout maximal usable length of output 0043 * @return the length of data written to output, or, on failure, 0 0044 */ 0045 int decompress(const void* input, int length, void* output, int maxout); 0046 0047 /** 0048 * @param data the data to compress 0049 * @return the compressed data (with KoLZF header) 0050 */ 0051 QByteArray compress(const QByteArray& data); 0052 0053 /** 0054 * @param data the data to decompress (with KoLZF header) 0055 * @param output where to write the decompressed data to 0056 * Existing content will be lost. 0057 * On failure will be an empty QByteArray. 0058 */ 0059 void decompress(const QByteArray &data, QByteArray &output); 0060 0061 } 0062 0063 #endif