Diffstat (limited to 'noncore/apps/opie-reader/arith.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/opie-reader/arith.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/noncore/apps/opie-reader/arith.h b/noncore/apps/opie-reader/arith.h new file mode 100644 index 0000000..19ca646 --- a/dev/null +++ b/noncore/apps/opie-reader/arith.h | |||
@@ -0,0 +1,43 @@ | |||
1 | /* | ||
2 | * Encodage & décodage arithmétique | ||
3 | */ | ||
4 | |||
5 | #ifndef ARITH_H | ||
6 | |||
7 | #define ARITH_H | ||
8 | |||
9 | #include "utypes.h" | ||
10 | #include <stdio.h> | ||
11 | |||
12 | class PPM_ReadBuf | ||
13 | { | ||
14 | FILE *my_file_in; | ||
15 | public: | ||
16 | PPM_ReadBuf(FILE* f) : my_file_in(f) {} | ||
17 | UINT readbuf(UCHAR *buf,UINT len) | ||
18 | { | ||
19 | UINT len1; | ||
20 | len1=fread(buf,1,len,my_file_in); | ||
21 | return len1; | ||
22 | } | ||
23 | }; | ||
24 | |||
25 | class ArithClass | ||
26 | { | ||
27 | |||
28 | UCHAR *ainbuf; | ||
29 | UCHAR *apinbuf,*aendinbuf; | ||
30 | UINT ainbufsize; | ||
31 | USHORT avalue,alow,ahigh; | ||
32 | PPM_ReadBuf* areadbuf; | ||
33 | UCHAR abitcnt; | ||
34 | USHORT abitbuf; | ||
35 | |||
36 | public: | ||
37 | void Arith_DecodeInit(PPM_ReadBuf* readbuf,UCHAR *buf,UINT bufsize); | ||
38 | UINT Arith_DecodeVal(UINT size); | ||
39 | void Arith_Decode(UINT min,UINT max,UINT size); | ||
40 | void Arith_DecodeEnd(void); | ||
41 | |||
42 | }; | ||
43 | #endif | ||