QuaZIP quazip-0-7-3
quachecksum32.h
00001 #ifndef QUACHECKSUM32_H
00002 #define QUACHECKSUM32_H
00003 
00004 /*
00005 Copyright (C) 2005-2014 Sergey A. Tachenov
00006 
00007 This file is part of QuaZIP.
00008 
00009 QuaZIP is free software: you can redistribute it and/or modify
00010 it under the terms of the GNU Lesser General Public License as published by
00011 the Free Software Foundation, either version 2.1 of the License, or
00012 (at your option) any later version.
00013 
00014 QuaZIP is distributed in the hope that it will be useful,
00015 but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017 GNU Lesser General Public License for more details.
00018 
00019 You should have received a copy of the GNU Lesser General Public License
00020 along with QuaZIP.  If not, see <http://www.gnu.org/licenses/>.
00021 
00022 See COPYING file for the full LGPL text.
00023 
00024 Original ZIP package is copyrighted by Gilles Vollant and contributors,
00025 see quazip/(un)zip.h files for details. Basically it's the zlib license.
00026 */
00027 
00028 #include <QByteArray>
00029 #include "quazip_global.h"
00030 
00032 
00052 class QUAZIP_EXPORT QuaChecksum32
00053 {
00054 
00055 public:
00057 
00062         virtual quint32 calculate(const QByteArray &data) = 0;
00063 
00065         virtual void reset() = 0;
00066 
00068 
00070         virtual void update(const QByteArray &buf) = 0;
00071 
00073 
00075         virtual quint32 value() = 0;
00076 };
00077 
00078 #endif //QUACHECKSUM32_H