00001 #ifndef KATE_kate_bitwise_h_GUARD 00002 #define KATE_kate_bitwise_h_GUARD 00003 00004 #include "kate_internal.h" 00005 #include "kate/kate.h" 00006 00007 typedef struct { 00008 long endbyte; 00009 int endbit; 00010 00011 unsigned char *buffer; 00012 unsigned char *ptr; 00013 long storage; 00014 } kate_pack_buffer; 00015 00016 void kate_pack_writeinit(kate_pack_buffer *b) kate_internal; 00017 void kate_pack_writetrunc(kate_pack_buffer *b,long bits) kate_internal; 00018 void kate_pack_write(kate_pack_buffer *b,unsigned long value,int bits) kate_internal; 00019 void kate_pack_writealign(kate_pack_buffer *b) kate_internal; 00020 void kate_pack_writecopy(kate_pack_buffer *b,void *source,long bits) kate_internal; 00021 void kate_pack_reset(kate_pack_buffer *b) kate_internal; 00022 void kate_pack_writeclear(kate_pack_buffer *b) kate_internal; 00023 void kate_pack_readinit(kate_pack_buffer *b,unsigned char *buf,int bytes) kate_internal; 00024 long kate_pack_look(kate_pack_buffer *b,int bits) kate_internal; 00025 long kate_pack_look1(kate_pack_buffer *b) kate_internal; 00026 void kate_pack_adv(kate_pack_buffer *b,int bits) kate_internal; 00027 void kate_pack_adv1(kate_pack_buffer *b) kate_internal; 00028 long kate_pack_read(kate_pack_buffer *b,int bits) kate_internal; 00029 long kate_pack_read1(kate_pack_buffer *b) kate_internal; 00030 long kate_pack_bytes(kate_pack_buffer *b) kate_internal; 00031 long kate_pack_bits(kate_pack_buffer *b) kate_internal; 00032 unsigned char *kate_pack_get_buffer(kate_pack_buffer *b) kate_internal; 00033 00034 long kate_pack_readable_bits(kate_pack_buffer *b) kate_internal; 00035 00036 #endif