zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
infutil.h File Reference

Go to the source code of this file.

Classes

struct  inflate_blocks_state
 

Macros

#define DUMPBITS(j)   {b>>=(j);k-=(j);}
 
#define FLUSH   {UPDOUT r=inflate_flush(s,z,r); LOADOUT}
 
#define LEAVE   {UPDATE return inflate_flush(s,z,r);}
 
#define LOAD   {LOADIN LOADOUT}
 
#define LOADIN   {p=z->next_in;n=z->avail_in;b=s->bitb;k=s->bitk;}
 
#define LOADOUT   {q=s->write;m=(uInt)WAVAIL;}
 
#define NEEDBITS(j)   {while(k<(j)){NEEDBYTE;b|=((uLong)NEXTBYTE)<<k;k+=8;}}
 
#define NEEDBYTE   {if(n)r=Z_OK;else LEAVE}
 
#define NEEDOUT   {if(m==0){WRAP if(m==0){FLUSH WRAP if(m==0) LEAVE}}r=Z_OK;}
 
#define NEXTBYTE   (n--,*p++)
 
#define OUTBYTE(a)   {*q++=(Byte)(a);m--;}
 
#define UPDATE   {UPDBITS UPDIN UPDOUT}
 
#define UPDBITS   {s->bitb=b;s->bitk=k;}
 
#define UPDIN   {z->avail_in=n;z->total_in+=p-z->next_in;z->next_in=p;}
 
#define UPDOUT   {s->write=q;}
 
#define WAVAIL   (uInt)(q<s->read?s->read-q-1:s->end-q)
 
#define WRAP   {if(q==s->end&&s->read!=s->window){q=s->window;m=(uInt)WAVAIL;}}
 

Enumerations

enum  inflate_block_mode {
  TYPE, LENS, STORED, TABLE,
  BTREE, DTREE, CODES, DRY,
  DONE, BAD
}
 

Functions

local int inflate_flush OF ((inflate_blocks_statef *, z_streamp, int))
 

Variables

local uInt inflate_mask [17]
 

Macro Definition Documentation

#define DUMPBITS (   j)    {b>>=(j);k-=(j);}

Definition at line 76 of file infutil.h.

Referenced by inflate_blocks(), and inflate_codes().

#define FLUSH   {UPDOUT r=inflate_flush(s,z,r); LOADOUT}

Definition at line 81 of file infutil.h.

Referenced by inflate_blocks(), and inflate_codes().

#define LEAVE   {UPDATE return inflate_flush(s,z,r);}

Definition at line 70 of file infutil.h.

Referenced by inflate_blocks(), and inflate_codes().

#define LOAD   {LOADIN LOADOUT}

Definition at line 85 of file infutil.h.

Referenced by inflate_blocks(), and inflate_codes().

#define LOADIN   {p=z->next_in;n=z->avail_in;b=s->bitb;k=s->bitk;}

Definition at line 72 of file infutil.h.

#define LOADOUT   {q=s->write;m=(uInt)WAVAIL;}

Definition at line 79 of file infutil.h.

#define NEEDBITS (   j)    {while(k<(j)){NEEDBYTE;b|=((uLong)NEXTBYTE)<<k;k+=8;}}

Definition at line 75 of file infutil.h.

Referenced by inflate_blocks(), and inflate_codes().

#define NEEDBYTE   {if(n)r=Z_OK;else LEAVE}

Definition at line 73 of file infutil.h.

#define NEEDOUT   {if(m==0){WRAP if(m==0){FLUSH WRAP if(m==0) LEAVE}}r=Z_OK;}

Definition at line 82 of file infutil.h.

Referenced by inflate_blocks(), and inflate_codes().

#define NEXTBYTE   (n--,*p++)

Definition at line 74 of file infutil.h.

#define OUTBYTE (   a)    {*q++=(Byte)(a);m--;}

Definition at line 83 of file infutil.h.

Referenced by inflate_codes().

#define UPDATE   {UPDBITS UPDIN UPDOUT}

Definition at line 69 of file infutil.h.

Referenced by inflate_blocks(), and inflate_codes().

#define UPDBITS   {s->bitb=b;s->bitk=k;}

Definition at line 66 of file infutil.h.

#define UPDIN   {z->avail_in=n;z->total_in+=p-z->next_in;z->next_in=p;}

Definition at line 67 of file infutil.h.

#define UPDOUT   {s->write=q;}

Definition at line 68 of file infutil.h.

#define WAVAIL   (uInt)(q<s->read?s->read-q-1:s->end-q)

Definition at line 78 of file infutil.h.

#define WRAP   {if(q==s->end&&s->read!=s->window){q=s->window;m=(uInt)WAVAIL;}}

Definition at line 80 of file infutil.h.

Enumeration Type Documentation

Enumerator
TYPE 
LENS 
STORED 
TABLE 
BTREE 
DTREE 
CODES 
DRY 
DONE 
BAD 

Definition at line 14 of file infutil.h.

Function Documentation

Variable Documentation

local uInt inflate_mask[17]

Definition at line 89 of file infutil.h.