29 lines
		
	
	
		
			443 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			443 B
		
	
	
	
		
			C++
		
	
	
	
	
	
#include "quacrc32.h"
 | 
						|
 | 
						|
#include "zlib.h"
 | 
						|
 | 
						|
QuaCrc32::QuaCrc32()
 | 
						|
{
 | 
						|
	reset();
 | 
						|
}
 | 
						|
 | 
						|
quint32 QuaCrc32::calculate(const QByteArray &data)
 | 
						|
{
 | 
						|
	return crc32( crc32(0L, Z_NULL, 0), (const Bytef*)data.data(), data.size() );
 | 
						|
}
 | 
						|
 | 
						|
void QuaCrc32::reset()
 | 
						|
{
 | 
						|
	checksum = crc32(0L, Z_NULL, 0);
 | 
						|
}
 | 
						|
 | 
						|
void QuaCrc32::update(const QByteArray &buf)
 | 
						|
{
 | 
						|
	checksum = crc32( checksum, (const Bytef*)buf.data(), buf.size() );
 | 
						|
}
 | 
						|
 | 
						|
quint32 QuaCrc32::value()
 | 
						|
{
 | 
						|
	return checksum;
 | 
						|
}
 |