~ubuntu-branches/ubuntu/trusty/tomahawk/trusty-proposed

« back to all changes in this revision

Viewing changes to src/libtomahawk/thirdparty/quazip/quazip/quachecksum32.h

  • Committer: Package Import Robot
  • Author(s): Harald Sitter
  • Date: 2013-03-07 21:50:13 UTC
  • Revision ID: package-import@ubuntu.com-20130307215013-6gdjkdds7i9uenvs
Tags: upstream-0.6.0+dfsg
ImportĀ upstreamĀ versionĀ 0.6.0+dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef QUACHECKSUM32_H
 
2
#define QUACHECKSUM32_H
 
3
 
 
4
#include <QByteArray>
 
5
#include "quazip_global.h"
 
6
 
 
7
/// Checksum interface.
 
8
/** \class QuaChecksum32 quachecksum32.h <quazip/quachecksum32.h>
 
9
 * This is an interface for 32 bit checksums.
 
10
 * Classes implementing this interface can calcunate a certin
 
11
 * checksum in a single step:
 
12
 * \code
 
13
 * QChecksum32 *crc32 = new QuaCrc32(); 
 
14
 * rasoult = crc32->calculate(data);
 
15
 * \endcode
 
16
 * or by streaming the data:
 
17
 * \code
 
18
 * QChecksum32 *crc32 = new QuaCrc32(); 
 
19
 * while(!fileA.atEnd())
 
20
 *     crc32->update(fileA.read(bufSize));
 
21
 * resoultA = crc32->value();
 
22
 * crc32->reset();
 
23
 * while(!fileB.atEnd())
 
24
 *     crc32->update(fileB.read(bufSize));
 
25
 * resoultB = crc32->value();
 
26
 * \endcode
 
27
 */
 
28
class QUAZIP_EXPORT QuaChecksum32
 
29
{
 
30
 
 
31
public:
 
32
        ///Calculates the checksum for data.
 
33
        /** \a data source data
 
34
         * \return data checksum
 
35
         *
 
36
         * This function has no efect on the value returned by value().
 
37
         */
 
38
        virtual quint32 calculate(const QByteArray &data) = 0;
 
39
 
 
40
        ///Resets the calculation on a checksun for a stream.
 
41
        virtual void reset() = 0;
 
42
 
 
43
        ///Updates the calculated checksum for the stream
 
44
        /** \a buf next portion of data from the stream
 
45
         */
 
46
        virtual void update(const QByteArray &buf) = 0;
 
47
 
 
48
        ///Value of the checksum calculated for the stream passed throw update().
 
49
        /** \return checksum
 
50
         */
 
51
        virtual quint32 value() = 0;
 
52
};
 
53
 
 
54
#endif //QUACHECKSUM32_H