OpenJPEG
2.0.0
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
home
makerpm
rpmbuild
BUILD
openjp2-2.0.0.2354
src
lib
openjp2
tgt.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
* Copyright (c) 2008, Jerome Fimes, Communications & Systemes <jerome.fimes@c-s.fr>
9
* Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France
10
* Copyright (c) 2012, CS Systemes d'Information, France
11
* All rights reserved.
12
*
13
* Redistribution and use in source and binary forms, with or without
14
* modification, are permitted provided that the following conditions
15
* are met:
16
* 1. Redistributions of source code must retain the above copyright
17
* notice, this list of conditions and the following disclaimer.
18
* 2. Redistributions in binary form must reproduce the above copyright
19
* notice, this list of conditions and the following disclaimer in the
20
* documentation and/or other materials provided with the distribution.
21
*
22
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
23
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
26
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
31
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
* POSSIBILITY OF SUCH DAMAGE.
33
*/
34
35
#ifndef __TGT_H
36
#define __TGT_H
37
47
51
typedef
struct
opj_tgt_node
{
52
struct
opj_tgt_node
*
parent
;
53
OPJ_INT32
value
;
54
OPJ_INT32
low
;
55
OPJ_UINT32
known
;
56
}
opj_tgt_node_t
;
57
61
typedef
struct
opj_tgt_tree
62
{
63
OPJ_UINT32
numleafsh
;
64
OPJ_UINT32
numleafsv
;
65
OPJ_UINT32
numnodes
;
66
opj_tgt_node_t
*
nodes
;
67
OPJ_UINT32
nodes_size
;
/* maximum size taken by nodes */
68
}
opj_tgt_tree_t
;
69
70
73
/* ----------------------------------------------------------------------- */
80
opj_tgt_tree_t
*
opj_tgt_create
(
OPJ_UINT32
numleafsh,
OPJ_UINT32
numleafsv);
81
90
opj_tgt_tree_t
*
opj_tgt_init
(
opj_tgt_tree_t
* p_tree,
91
OPJ_UINT32
p_num_leafs_h,
92
OPJ_UINT32
p_num_leafs_v);
97
void
opj_tgt_destroy
(
opj_tgt_tree_t
*tree);
102
void
opj_tgt_reset
(
opj_tgt_tree_t
*tree);
109
void
opj_tgt_setvalue
(
opj_tgt_tree_t
*tree,
110
OPJ_UINT32
leafno,
111
OPJ_INT32
value);
119
void
opj_tgt_encode
(
opj_bio_t
*bio,
120
opj_tgt_tree_t
*tree,
121
OPJ_UINT32
leafno,
122
OPJ_INT32
threshold);
131
OPJ_UINT32
opj_tgt_decode
(
opj_bio_t
*bio,
132
opj_tgt_tree_t
*tree,
133
OPJ_UINT32
leafno,
134
OPJ_INT32
threshold);
135
/* ----------------------------------------------------------------------- */
139
140
#endif
/* __TGT_H */
Generated by
1.8.3.1