#include "bzlib_private.h"
Go to the source code of this file.
Defines | |
#define | GET_BIT(lll, uuu) GET_BITS(lll,uuu,1) |
#define | GET_BITS(lll, vvv, nnn) |
#define | GET_MTF_VAL(label1, label2, lval) |
#define | GET_UCHAR(lll, uuu) GET_BITS(lll,uuu,8) |
#define | RETURN(rrr) { retVal = rrr; goto save_state_and_return; }; |
Functions | |
Int32 | BZ2_decompress (DState *s) |
static void | makeMaps_d (DState *s) |
Definition at line 70 of file decompress.c.
#define GET_BITS | ( | lll, | |
vvv, | |||
nnn | |||
) |
case lll: s->state = lll; \ while (True) { \ if (s->bsLive >= nnn) { \ UInt32 v; \ v = (s->bsBuff >> \ (s->bsLive-nnn)) & ((1 << nnn)-1); \ s->bsLive -= nnn; \ vvv = v; \ break; \ } \ if (s->strm->avail_in == 0) RETURN(BZ_OK); \ s->bsBuff \ = (s->bsBuff << 8) | \ ((UInt32) \ (*((UChar*)(s->strm->next_in)))); \ s->bsLive += 8; \ s->strm->next_in++; \ s->strm->avail_in--; \ s->strm->total_in_lo32++; \ if (s->strm->total_in_lo32 == 0) \ s->strm->total_in_hi32++; \ }
Definition at line 43 of file decompress.c.
#define GET_MTF_VAL | ( | label1, | |
label2, | |||
lval | |||
) |
{ \ if (groupPos == 0) { \ groupNo++; \ if (groupNo >= nSelectors) \ RETURN(BZ_DATA_ERROR); \ groupPos = BZ_G_SIZE; \ gSel = s->selector[groupNo]; \ gMinlen = s->minLens[gSel]; \ gLimit = &(s->limit[gSel][0]); \ gPerm = &(s->perm[gSel][0]); \ gBase = &(s->base[gSel][0]); \ } \ groupPos--; \ zn = gMinlen; \ GET_BITS(label1, zvec, zn); \ while (1) { \ if (zn > 20 /* the longest code */) \ RETURN(BZ_DATA_ERROR); \ if (zvec <= gLimit[zn]) break; \ zn++; \ GET_BIT(label2, zj); \ zvec = (zvec << 1) | zj; \ }; \ if (zvec - gBase[zn] < 0 \ || zvec - gBase[zn] >= BZ_MAX_ALPHA_SIZE) \ RETURN(BZ_DATA_ERROR); \ lval = gPerm[zvec - gBase[zn]]; \ }
Definition at line 74 of file decompress.c.
Definition at line 67 of file decompress.c.
#define RETURN | ( | rrr | ) | { retVal = rrr; goto save_state_and_return; }; |
Definition at line 40 of file decompress.c.
Int32 BZ2_decompress | ( | DState * | s | ) |
Definition at line 106 of file decompress.c.
static void makeMaps_d | ( | DState * | s | ) | [static] |
Definition at line 27 of file decompress.c.