OpenJPEG  1.5.1
raw.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2002-2007, Communications and Remote Sensing Laboratory, Universite catholique de Louvain (UCL), Belgium
3  * Copyright (c) 2002-2007, Professor Benoit Macq
4  * Copyright (c) 2003-2007, Francois-Olivier Devaux and Antonin Descampe
5  * Copyright (c) 2005, Herve Drolon, FreeImage Team
6  * All rights reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  * notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  * notice, this list of conditions and the following disclaimer in the
15  * documentation and/or other materials provided with the distribution.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
18  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27  * POSSIBILITY OF SUCH DAMAGE.
28  */
29 
30 #ifndef __RAW_H
31 #define __RAW_H
32 
42 
46 typedef struct opj_raw {
48  unsigned char c;
50  unsigned int ct;
52  unsigned int lenmax;
54  unsigned int len;
56  unsigned char *bp;
58  unsigned char *start;
60  unsigned char *end;
61 } opj_raw_t;
62 
65 /* ----------------------------------------------------------------------- */
70 opj_raw_t* raw_create(void);
75 void raw_destroy(opj_raw_t *raw);
81 int raw_numbytes(opj_raw_t *raw);
88 void raw_init_dec(opj_raw_t *raw, unsigned char *bp, int len);
94 int raw_decode(opj_raw_t *raw);
95 /* ----------------------------------------------------------------------- */
99 
100 #endif /* __RAW_H */
unsigned char * start
pointer to the start of the buffer
Definition: raw.h:58
int raw_numbytes(opj_raw_t *raw)
Return the number of bytes written/read since initialisation.
Definition: raw.c:56
int raw_decode(opj_raw_t *raw)
Decode a symbol using raw-decoder.
Definition: raw.c:68
RAW encoding operations.
Definition: raw.h:46
opj_raw_t * raw_create(void)
Create a new RAW handle.
Definition: raw.c:45
void raw_destroy(opj_raw_t *raw)
Destroy a previously created RAW handle.
Definition: raw.c:50
unsigned int len
length decoded
Definition: raw.h:54
unsigned char * end
pointer to the end of the buffer
Definition: raw.h:60
unsigned char c
temporary buffer where bits are coded or decoded
Definition: raw.h:48
struct opj_raw opj_raw_t
RAW encoding operations.
unsigned char * bp
pointer to the current position in the buffer
Definition: raw.h:56
unsigned int ct
number of bits already read or free to write
Definition: raw.h:50
void raw_init_dec(opj_raw_t *raw, unsigned char *bp, int len)
Initialize the decoder.
Definition: raw.c:60
unsigned int lenmax
maximum length to decode
Definition: raw.h:52