OpenJPEG 1.5.1
pi.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) 2001-2003, David Janssens
5 * Copyright (c) 2002-2003, Yannick Verschueren
6 * Copyright (c) 2003-2007, Francois-Olivier Devaux and Antonin Descampe
7 * Copyright (c) 2005, Herve Drolon, FreeImage Team
8 * All rights reserved.
9 *
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions
12 * are met:
13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 * 2. Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in the
17 * documentation and/or other materials provided with the distribution.
18 *
19 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
20 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 * POSSIBILITY OF SUCH DAMAGE.
30 */
31
32#ifndef __PI_H
33#define __PI_H
45
49typedef struct opj_pi_resolution {
50 int pdx, pdy;
51 int pw, ph;
53
57typedef struct opj_pi_comp {
58 int dx, dy;
63
67typedef struct opj_pi_iterator {
69 char tp_on;
71 short int *include;
73 int step_l;
75 int step_r;
77 int step_c;
79 int step_p;
81 int compno;
83 int resno;
85 int precno;
87 int layno;
89 int first;
96 int tx0, ty0, tx1, ty1;
97 int x, y, dx, dy;
99
102/* ----------------------------------------------------------------------- */
125opj_bool pi_create_encode(opj_pi_iterator_t *pi, opj_cp_t *cp,int tileno, int pino,int tpnum, int tppos, J2K_T2_MODE t2_mode,int cur_totnum_tp);
134opj_pi_iterator_t *pi_create_decode(opj_image_t * image, opj_cp_t * cp, int tileno);
135
143void pi_destroy(opj_pi_iterator_t *pi, opj_cp_t *cp, int tileno);
144
151/* ----------------------------------------------------------------------- */
155
156#endif /* __PI_H */
enum T2_MODE J2K_T2_MODE
T2 encoding mode.
int opj_bool
Definition openjpeg.h:63
struct opj_pi_iterator opj_pi_iterator_t
Packet iterator.
struct opj_pi_comp opj_pi_comp_t
FIXME: documentation.
opj_bool pi_create_encode(opj_pi_iterator_t *pi, opj_cp_t *cp, int tileno, int pino, int tpnum, int tppos, J2K_T2_MODE t2_mode, int cur_totnum_tp)
Modify the packet iterator for enabling tile part generation.
Definition pi.c:729
opj_pi_iterator_t * pi_create_decode(opj_image_t *image, opj_cp_t *cp, int tileno)
Create a packet iterator for Decoder.
Definition pi.c:410
struct opj_pi_resolution opj_pi_resolution_t
FIXME: documentation.
opj_bool pi_next(opj_pi_iterator_t *pi)
Modify the packet iterator to point to the next packet.
Definition pi.c:710
void pi_destroy(opj_pi_iterator_t *pi, opj_cp_t *cp, int tileno)
Destroy a packet iterator.
Definition pi.c:688
opj_pi_iterator_t * pi_initialise_encode(opj_image_t *image, opj_cp_t *cp, int tileno, J2K_T2_MODE t2_mode)
Create a packet iterator for Encoder.
Definition pi.c:543
Coding parameters.
Definition j2k.h:204
Defines image data and characteristics.
Definition openjpeg.h:533
FIXME: documentation.
Definition pi.h:57
opj_pi_resolution_t * resolutions
Definition pi.h:61
int dy
Definition pi.h:58
int numresolutions
number of resolution levels
Definition pi.h:60
int dx
Definition pi.h:58
Packet iterator.
Definition pi.h:67
int dx
Definition pi.h:97
int ty0
Definition pi.h:96
int compno
component that identify the packet
Definition pi.h:81
int tx0
Definition pi.h:96
int tx1
Definition pi.h:96
int numcomps
number of components in the image
Definition pi.h:93
int layno
layer that identify the packet
Definition pi.h:87
int dy
Definition pi.h:97
int y
Definition pi.h:97
int ty1
Definition pi.h:96
short int * include
precise if the packet has been already used (usefull for progression order change)
Definition pi.h:71
int step_l
layer step used to localize the packet in the include vector
Definition pi.h:73
int x
Definition pi.h:97
opj_pi_comp_t * comps
Components.
Definition pi.h:95
int step_c
component step used to localize the packet in the include vector
Definition pi.h:77
char tp_on
Enabling Tile part generation.
Definition pi.h:69
int precno
precinct that identify the packet
Definition pi.h:85
int step_r
resolution step used to localize the packet in the include vector
Definition pi.h:75
int step_p
precinct step used to localize the packet in the include vector
Definition pi.h:79
int resno
resolution that identify the packet
Definition pi.h:83
int first
0 if the first packet
Definition pi.h:89
opj_poc_t poc
progression order change information
Definition pi.h:91
FIXME: documentation.
Definition pi.h:49
int pdy
Definition pi.h:50
int pdx
Definition pi.h:50
int ph
Definition pi.h:51
int pw
Definition pi.h:51
Progression order changes.
Definition openjpeg.h:202