OpenJPEG: cachemodel_manager.h Source File

OpenJPEG 2.3.1

cachemodel_manager.h
Go to the documentation of this file.
1 /*
2 * $Id$
3 *
4 * Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium
5 * Copyright (c) 2002-2014, Professor Benoit Macq
6 * Copyright (c) 2010-2011, Kaori Hagihara
7 * All rights reserved.
8 *
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions
11 * are met:
12 * 1. Redistributions of source code must retain the above copyright
13 * notice, this list of conditions and the following disclaimer.
14 * 2. Redistributions in binary form must reproduce the above copyright
15 * notice, this list of conditions and the following disclaimer in the
16 * documentation and/or other materials provided with the distribution.
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
19 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
22 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28 * POSSIBILITY OF SUCH DAMAGE.
29 */
30
31 #ifndef CACHEMODEL_MANAGER_H_
32 # define CACHEMODEL_MANAGER_H_
33
34 #include "target_manager.h"
35
37 typedef struct cachemodel_param {
38 target_param_t *target;
39 OPJ_BOOL jppstream;
40 OPJ_BOOL mhead_model;
41 OPJ_BOOL *tp_model;
42 OPJ_BOOL *th_model;
43 OPJ_BOOL **pp_model;
44 struct cachemodel_param *next;
45 } cachemodel_param_t;
46
48 typedef struct cachemodellist_param {
49 cachemodel_param_t *first;
50 cachemodel_param_t *last;
51 } cachemodellist_param_t;
52
53
59 cachemodellist_param_t * gene_cachemodellist(void);
60
69 cachemodel_param_t * gene_cachemodel(cachemodellist_param_t *cachemodellist,
70 target_param_t *target, OPJ_BOOL reqJPP);
71
72
78 void print_cachemodel(cachemodel_param_t cachemodel);
79
80
88 cachemodel_param_t * search_cachemodel(target_param_t *target,
89 cachemodellist_param_t *cachemodellist);
90
91
98 OPJ_BOOL is_allsent(cachemodel_param_t cachemodel);
99
100
106 void delete_cachemodel(cachemodel_param_t **cachemodel);
107
113 void delete_cachemodellist(cachemodellist_param_t **cachemodellist);
114
115
116 #endif /* !CACHEMODEL_MANAGER_H_ */
cachemodel_param
Cache model parameters.
Definition: cachemodel_manager.h:37
cachemodel_param::pp_model
OPJ_BOOL ** pp_model
dynamic array pointer of precint packet model
Definition: cachemodel_manager.h:43
opj_calloc
void * opj_calloc(size_t num, size_t size)
Allocate a memory block with elements initialized to 0.
Definition: opj_malloc.c:198
target_param::codeidx
index_param_t * codeidx
index information of codestream
Definition: target_manager.h:49
delete_cachemodel
void delete_cachemodel(cachemodel_param_t **cachemodel)
delete a cache model
Definition: cachemodel_manager.c:191
SIZmarker_param::XTnum
Byte4_t XTnum
number of tiles in horizontal direction
Definition: index_manager.h:66
is_allsent
OPJ_BOOL is_allsent(cachemodel_param_t cachemodel)
check if all data has been sent
Definition: cachemodel_manager.c:211
gene_cachemodellist
cachemodellist_param_t * gene_cachemodellist(void)
generate a cache model list
Definition: cachemodel_manager.c:47
target_param::jppstream
OPJ_BOOL jppstream
if this target can return JPP-stream
Definition: target_manager.h:51
faixbox_param
fragment array index box parameters
Definition: faixbox_manager.h:77
get_nmax
Byte8_t get_nmax(faixbox_param_t *faix)
get nmax parameter value from faix box
Definition: faixbox_manager.c:163
index_param::tilepart
faixbox_param_t * tilepart
tile part information from tpix box
Definition: index_manager.h:93
cachemodel_param::jppstream
OPJ_BOOL jppstream
return type, true: JPP-stream, false: JPT-stream
Definition: cachemodel_manager.h:39
SIZmarker_param::YTnum
Byte4_t YTnum
number of tiles in vertical direction
Definition: index_manager.h:67
OPJ_BOOL
int OPJ_BOOL
Definition: openjpeg.h:110
refer_target
void refer_target(target_param_t *reftarget, target_param_t **ptr)
refer a target, used to make a new cache model
Definition: target_manager.c:135
target_param::jptstream
OPJ_BOOL jptstream
if this target can return JPP-stream
Definition: target_manager.h:52
target_manager.h
gene_cachemodel
cachemodel_param_t * gene_cachemodel(cachemodellist_param_t *cachemodellist, target_param_t *target, OPJ_BOOL reqJPP)
generate a cache model under a list
Definition: cachemodel_manager.c:60
is_allsent
OPJ_BOOL is_allsent(cachemodel_param_t cachemodel)
check if all data has been sent
Definition: cachemodel_manager.c:211
OPJ_TRUE
#define OPJ_TRUE
Definition: openjpeg.h:111
opj_malloc
void * opj_malloc(size_t size)
Allocate an uninitialized memory block.
Definition: opj_malloc.c:191
cachemodel_param::target
target_param_t * target
reference pointer to the target
Definition: cachemodel_manager.h:38
cachemodel_param_t
struct cachemodel_param cachemodel_param_t
Cache model parameters.
unrefer_target
void unrefer_target(target_param_t *target)
refer a target, used to make a new cache model
Definition: target_manager.c:141
opj_free
void opj_free(void *ptr)
Deallocates or frees a memory block.
Definition: opj_malloc.c:246
get_m
Byte8_t get_m(faixbox_param_t *faix)
get m parameter value from faix box
Definition: faixbox_manager.c:172
cachemodel_param::tp_model
OPJ_BOOL * tp_model
dynamic array pointer of tile part model, if sent, 1, else 0
Definition: cachemodel_manager.h:41
search_cachemodel
cachemodel_param_t * search_cachemodel(target_param_t *target, cachemodellist_param_t *cachemodellist)
search a cache model of a target
Definition: cachemodel_manager.c:160
cachemodel_param::th_model
OPJ_BOOL * th_model
dynamic array pointer of tile header model
Definition: cachemodel_manager.h:42
logstream
#define logstream
Definition: cachemodel_manager.c:43
cachemodellist_param
Cache model list parameters.
Definition: cachemodel_manager.h:48
cachemodellist_param_t
struct cachemodellist_param cachemodellist_param_t
Cache model list parameters.
delete_cachemodellist
void delete_cachemodellist(cachemodellist_param_t **cachemodellist)
delete cachemodel list
Definition: cachemodel_manager.c:178
index_param::SIZ
SIZmarker_param_t SIZ
SIZ marker information.
Definition: index_manager.h:91
target_param::targetname
char * targetname
local file path or URL ( URL is supported only with SERVER mode)
Definition: target_manager.h:42
cachemodel_param::next
struct cachemodel_param * next
pointer to the next cache model
Definition: cachemodel_manager.h:44
SIZmarker_param::Csiz
Byte2_t Csiz
number of the components in the image
Definition: index_manager.h:68
gene_cachemodel
cachemodel_param_t * gene_cachemodel(cachemodellist_param_t *cachemodellist, target_param_t *target, OPJ_BOOL reqJPP)
generate a cache model under a list
Definition: cachemodel_manager.c:60
target_param
target parameters
Definition: target_manager.h:40
delete_cachemodel
void delete_cachemodel(cachemodel_param_t **cachemodel)
delete a cache model
Definition: cachemodel_manager.c:191
gene_cachemodellist
cachemodellist_param_t * gene_cachemodellist(void)
generate a cache model list
Definition: cachemodel_manager.c:47
index_param::precpacket
faixbox_param_t ** precpacket
dynamic array of precint packet information from ppix box
Definition: index_manager.h:97
opj_inttypes.h
OPJ_FALSE
#define OPJ_FALSE
Definition: openjpeg.h:112
cachemodellist_param::first
cachemodel_param_t * first
first cache model pointer of the list
Definition: cachemodel_manager.h:49
cachemodel_manager.h
cachemodellist_param::last
cachemodel_param_t * last
last cache model pointer of the list
Definition: cachemodel_manager.h:50
delete_cachemodellist
void delete_cachemodellist(cachemodellist_param_t **cachemodellist)
delete cachemodel list
Definition: cachemodel_manager.c:178
cachemodel_param::mhead_model
OPJ_BOOL mhead_model
main header model, if sent, 1, else 0
Definition: cachemodel_manager.h:40
Byte8_t
uint64_t Byte8_t
Definition: byte_manager.h:40
faixbox_manager.h
print_cachemodel
void print_cachemodel(cachemodel_param_t cachemodel)
print cache model
Definition: cachemodel_manager.c:120
print_cachemodel
void print_cachemodel(cachemodel_param_t cachemodel)
print cache model
Definition: cachemodel_manager.c:120
search_cachemodel
cachemodel_param_t * search_cachemodel(target_param_t *target, cachemodellist_param_t *cachemodellist)
search a cache model of a target
Definition: cachemodel_manager.c:160