annotate src/win32/7zip/7z/CPP/7zip/Compress/BZip2Crc.cpp @ 1:f9f4f1b99eed

importing src directory
author Robert McIntyre <rlm@mit.edu>
date Sat, 03 Mar 2012 10:31:27 -0600
parents
children
rev   line source
rlm@1 1 // BZip2Crc.cpp
rlm@1 2
rlm@1 3 #include "StdAfx.h"
rlm@1 4
rlm@1 5 #include "BZip2Crc.h"
rlm@1 6
rlm@1 7 UInt32 CBZip2Crc::Table[256];
rlm@1 8
rlm@1 9 static const UInt32 kBZip2CrcPoly = 0x04c11db7; /* AUTODIN II, Ethernet, & FDDI */
rlm@1 10
rlm@1 11 void CBZip2Crc::InitTable()
rlm@1 12 {
rlm@1 13 for (UInt32 i = 0; i < 256; i++)
rlm@1 14 {
rlm@1 15 UInt32 r = (i << 24);
rlm@1 16 for (int j = 8; j > 0; j--)
rlm@1 17 r = (r & 0x80000000) ? ((r << 1) ^ kBZip2CrcPoly) : (r << 1);
rlm@1 18 Table[i] = r;
rlm@1 19 }
rlm@1 20 }
rlm@1 21
rlm@1 22 class CBZip2CrcTableInit
rlm@1 23 {
rlm@1 24 public:
rlm@1 25 CBZip2CrcTableInit() { CBZip2Crc::InitTable(); }
rlm@1 26 } g_BZip2CrcTableInit;