mirror of
https://github.com/Xevion/easy7zip.git
synced 2025-12-16 12:11:47 -06:00
4.27 beta
This commit is contained in:
committed by
Kornel Lesiński
parent
31e7b924e8
commit
d66cf2fcf3
32
7zip/Compress/Rar29/Original/rs.hpp
Executable file
32
7zip/Compress/Rar29/Original/rs.hpp
Executable file
@@ -0,0 +1,32 @@
|
||||
#ifndef _RAR_RS_
|
||||
#define _RAR_RS_
|
||||
|
||||
#define MAXPAR 255
|
||||
#define MAXPOL 512
|
||||
|
||||
class RSCoder
|
||||
{
|
||||
private:
|
||||
void gfInit();
|
||||
int gfMult(int a,int b);
|
||||
void pnInit();
|
||||
void pnMult(int *p1,int *p2,int *r);
|
||||
|
||||
int gfExp[MAXPOL];
|
||||
int gfLog[MAXPAR+1];
|
||||
|
||||
int GXPol[MAXPOL*2];
|
||||
|
||||
int ErrorLocs[MAXPAR+1],ErrCount;
|
||||
int Dn[MAXPAR+1];
|
||||
|
||||
int ParSize;
|
||||
int PolB[MAXPOL];
|
||||
bool FirstBlockDone;
|
||||
public:
|
||||
RSCoder(int ParSize);
|
||||
void Encode(byte *Data,int DataSize,byte *DestData);
|
||||
bool Decode(byte *Data,int DataSize,int *EraLoc,int EraSize);
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user