compr_rubin.h 520 B

123456789101112131415161718192021
  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.7 2005/11/07 11:14:38 gleixner Exp $ */
  5. #include "pushpull.h"
  6. #define RUBIN_REG_SIZE 16
  7. #define UPPER_BIT_RUBIN (((long) 1)<<(RUBIN_REG_SIZE-1))
  8. #define LOWER_BITS_RUBIN ((((long) 1)<<(RUBIN_REG_SIZE-1))-1)
  9. struct rubin_state {
  10. unsigned long p;
  11. unsigned long q;
  12. unsigned long rec_q;
  13. long bit_number;
  14. struct pushpull pp;
  15. int bit_divider;
  16. int bits[8];
  17. };