Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/kornelski/7z.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '7zip/Compress/Rar29/Original/rs.hpp')
-rwxr-xr-x7zip/Compress/Rar29/Original/rs.hpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/7zip/Compress/Rar29/Original/rs.hpp b/7zip/Compress/Rar29/Original/rs.hpp
new file mode 100755
index 00000000..2f099f00
--- /dev/null
+++ b/7zip/Compress/Rar29/Original/rs.hpp
@@ -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