MCPcopy Create free account
hub / github.com/abbeycode/UnrarKit / Encode

Method Encode

Libraries/unrar/rs.cpp:74–90  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

72
73
74void RSCoder::Encode(byte *Data,int DataSize,byte *DestData)
75{
76 int ShiftReg[MAXPAR+1]; // Linear Feedback Shift Register.
77
78 Clean(ShiftReg,ParSize+1);
79 for (int I=0;I<DataSize;I++)
80 {
81 int D=Data[I]^ShiftReg[ParSize-1];
82
83 // Use g(x) to define feedback taps.
84 for (int J=ParSize-1;J>0;J--)
85 ShiftReg[J]=ShiftReg[J-1]^gfMult(GXPol[J],D);
86 ShiftReg[0]=gfMult(GXPol[0],D);
87 }
88 for (int I=0;I<ParSize;I++)
89 DestData[I]=ShiftReg[ParSize-I-1];
90}
91
92
93bool RSCoder::Decode(byte *Data,int DataSize,int *EraLoc,int EraSize)

Callers 1

EncodeBufMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected