OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [tags/] [LINUX_2_4_26_OR32/] [linux/] [linux-2.4/] [fs/] [jffs2/] [compr_rubin.h] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1275 phoenix
/* Rubin encoder/decoder header       */
2
/* work started at   : aug   3, 1994  */
3
/* last modification : aug  15, 1994  */
4
/* $Id: compr_rubin.h,v 1.1.1.1 2004-04-15 01:11:03 phoenix 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
};
22
 
23
 
24
void init_rubin (struct rubin_state *rs, int div, int *bits);
25
int encode (struct rubin_state *, long, long, int);
26
void end_rubin (struct rubin_state *);
27
void init_decode (struct rubin_state *, int div, int *bits);
28
int decode (struct rubin_state *, long, long);

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.