| lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 | /* | 
 | 2 |  * qrencode - QR Code encoder | 
 | 3 |  * | 
 | 4 |  * Binary sequence class. | 
 | 5 |  * Copyright (C) 2006-2011 Kentaro Fukuchi <kentaro@fukuchi.org> | 
 | 6 |  * | 
 | 7 |  * This library is free software; you can redistribute it and/or | 
 | 8 |  * modify it under the terms of the GNU Lesser General Public | 
 | 9 |  * License as published by the Free Software Foundation; either | 
 | 10 |  * version 2.1 of the License, or any later version. | 
 | 11 |  * | 
 | 12 |  * This library is distributed in the hope that it will be useful, | 
 | 13 |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
 | 14 |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 
 | 15 |  * Lesser General Public License for more details. | 
 | 16 |  * | 
 | 17 |  * You should have received a copy of the GNU Lesser General Public | 
 | 18 |  * License along with this library; if not, write to the Free Software | 
 | 19 |  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | 
 | 20 |  */ | 
 | 21 |  | 
 | 22 | #ifndef __BITSTREAM_H__ | 
 | 23 | #define __BITSTREAM_H__ | 
 | 24 |  | 
 | 25 | typedef struct { | 
 | 26 | 	int length; | 
 | 27 | 	unsigned char *data; | 
 | 28 | } BitStream; | 
 | 29 |  | 
 | 30 | extern BitStream *BitStream_new(void); | 
 | 31 | extern int BitStream_append(BitStream *bstream, BitStream *arg); | 
 | 32 | extern int BitStream_appendNum(BitStream *bstream, int bits, unsigned int num); | 
 | 33 | extern int BitStream_appendBytes(BitStream *bstream, int size, unsigned char *data); | 
 | 34 | #define BitStream_size(__bstream__) (__bstream__->length) | 
 | 35 | extern unsigned char *BitStream_toByte(BitStream *bstream); | 
 | 36 | extern void BitStream_free(BitStream *bstream); | 
 | 37 |  | 
 | 38 | #endif /* __BITSTREAM_H__ */ |