mirror of
https://github.com/DrBeef/Raze.git
synced 2024-11-26 05:51:00 +00:00
718112a8fe
Currently none of these is being used, but eventually they will, once more code gets ported over. So it's better to have them right away and avoid editing the project file too much, only to revert that later.
25 lines
612 B
C
25 lines
612 B
C
/* 7zCrc.h -- CRC32 calculation
|
|
2013-01-18 : Igor Pavlov : Public domain */
|
|
|
|
#ifndef __7Z_CRC_H
|
|
#define __7Z_CRC_H
|
|
|
|
#include "7zTypes.h"
|
|
|
|
EXTERN_C_BEGIN
|
|
|
|
extern UInt32 g_CrcTable[];
|
|
|
|
/* Call CrcGenerateTable one time before other CRC functions */
|
|
void MY_FAST_CALL CrcGenerateTable(void);
|
|
|
|
#define CRC_INIT_VAL 0xFFFFFFFF
|
|
#define CRC_GET_DIGEST(crc) ((crc) ^ CRC_INIT_VAL)
|
|
#define CRC_UPDATE_BYTE(crc, b) (g_CrcTable[((crc) ^ (b)) & 0xFF] ^ ((crc) >> 8))
|
|
|
|
UInt32 MY_FAST_CALL CrcUpdate(UInt32 crc, const void *data, size_t size);
|
|
UInt32 MY_FAST_CALL CrcCalc(const void *data, size_t size);
|
|
|
|
EXTERN_C_END
|
|
|
|
#endif
|