| Server IP : 182.53.201.61 / Your IP : 216.73.217.175 Web Server : Apache/2.2.15 (Fedora) System : Linux km10.dyndns.org 2.6.31.5-127.fc12.i686.PAE #1 SMP Sat Nov 7 21:25:57 EST 2009 i686 User : apache ( 48) PHP Version : 5.3.3 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/include/netpbm/ |
Upload File : |
/*\
* $Id: bitio.h,v 1.4 1992/11/24 19:37:02 dws Exp dws $
*
* bitio.h - bitstream I/O
*
* Works for (sizeof(unsigned long)-1)*8 bits.
*
* Copyright (C) 1992 by David W. Sanderson.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation for any purpose and without fee is hereby granted,
* provided that the above copyright notice appear in all copies and
* that both that copyright notice and this permission notice appear
* in supporting documentation. This software is provided "as is"
* without express or implied warranty.
*
* $Log: bitio.h,v $
* Revision 1.4 1992/11/24 19:37:02 dws
* Added copyright
*
* Revision 1.3 1992/11/17 03:37:59 dws
* updated comment
*
* Revision 1.2 1992/11/10 23:10:22 dws
* Generalized to handle more than one bitstream at a time.
*
* Revision 1.1 1992/11/10 18:33:51 dws
* Initial revision
*
\*/
#ifndef _BITIO_H_
#define _BITIO_H_
#include <netpbm/pm.h>
#ifdef __cplusplus
extern "C" {
#endif
#if 0
} /* to fake out automatic code indenters */
#endif
typedef struct bitstream *BITSTREAM;
struct bitstream *
pm_bitinit(FILE * const f, const char * const mode);
/*
* pm_bitfini() - deallocate the given BITSTREAM.
*
* You must call this after you are done with the BITSTREAM.
*
* It may flush some bits left in the buffer.
*
* Returns the number of bytes written, -1 on error.
*/
int
pm_bitfini(BITSTREAM b);
/*
* pm_bitread() - read the next nbits into *val from the given file.
*
* Returns the number of bytes read, -1 on error.
*/
int
pm_bitread(BITSTREAM b,
unsigned long nbits,
unsigned long * val);
/*
* pm_bitwrite() - write the low nbits of val to the given file.
*
* The last pm_bitwrite() must be followed by a call to pm_bitflush().
*
* Returns the number of bytes written, -1 on error.
*/
int
pm_bitwrite(BITSTREAM b,
unsigned long nbits,
unsigned long val);
#ifdef __cplusplus
}
#endif
#endif