Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* Rubin encoder/decoder header */ |
| 2 | /* work started at : aug 3, 1994 */ |
| 3 | /* last modification : aug 15, 1994 */ |
| 4 | /* $Id: compr_rubin.h,v 1.6 2002/01/25 01:49:26 dwmw2 Exp $ */ |
| 5 | |
| 6 | #include "pushpull.h" |
| 7 | |
| 8 | #define RUBIN_REG_SIZE 16 |
| 9 | #define UPPER_BIT_RUBIN (((long) 1)<<(RUBIN_REG_SIZE-1)) |
| 10 | #define LOWER_BITS_RUBIN ((((long) 1)<<(RUBIN_REG_SIZE-1))-1) |
| 11 | |
| 12 | |
| 13 | struct rubin_state { |
| 14 | unsigned long p; |
| 15 | unsigned long q; |
| 16 | unsigned long rec_q; |
| 17 | long bit_number; |
| 18 | struct pushpull pp; |
| 19 | int bit_divider; |
| 20 | int bits[8]; |
| 21 | }; |