target_manager.h
Go to the documentation of this file.
/*
* $Id$
*
* Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium
* Copyright (c) 2002-2014, Professor Benoit Macq
* Copyright (c) 2010-2011, Kaori Hagihara
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef TARGET_MANAGER_H_
# define TARGET_MANAGER_H_
#include "index_manager.h"
#define MAX_LENOFTID 30
typedef struct target_param {
char tid[MAX_LENOFTID];
char *targetname;
int fd;
#ifdef SERVER
char *tmpfname;
#endif
int csn;
index_param_t
*codeidx;
int num_of_use;
OPJ_BOOL jppstream;
OPJ_BOOL jptstream;
struct target_param
*next;
} target_param_t;
typedef struct targetlist_param {
target_param_t *first;
target_param_t *last;
} targetlist_param_t;
targetlist_param_t * gene_targetlist(void);
target_param_t * gene_target(targetlist_param_t *targetlist, char *targetpath);
void refer_target(target_param_t *reftarget, target_param_t **ptr);
void unrefer_target(target_param_t *target);
void delete_target(target_param_t **target);
void delete_target_in_list(target_param_t **target,
targetlist_param_t *targetlist);
void delete_targetlist(targetlist_param_t **targetlist);
void print_target(target_param_t *target);
void print_alltarget(targetlist_param_t *targetlist);
target_param_t * search_target(const char targetname[],
targetlist_param_t *targetlist);
target_param_t * search_targetBytid(const char tid[],
targetlist_param_t *targetlist);
#endif /* !TARGET_MANAGER_H_ */
index_manager.h
index_param_t
struct index_param index_param_t
index parameters
OPJ_BOOL
int OPJ_BOOL
Definition openjpeg.h:116
target_param
target parameters
Definition target_manager.h:40
target_param::num_of_use
int num_of_use
numbers of sessions referring to this target
Definition target_manager.h:50
target_param::jptstream
OPJ_BOOL jptstream
if this target can return JPP-stream
Definition target_manager.h:52
target_param::next
struct target_param * next
pointer to the next target
Definition target_manager.h:53
target_param::tid
char tid[MAX_LENOFTID]
target identifier
Definition target_manager.h:41
target_param::fd
int fd
file descriptor
Definition target_manager.h:43
target_param::targetname
char * targetname
local file path or URL ( URL is supported only with SERVER mode)
Definition target_manager.h:42
target_param::codeidx
index_param_t * codeidx
index information of codestream
Definition target_manager.h:49
target_param::csn
int csn
codestream number
Definition target_manager.h:47
target_param::jppstream
OPJ_BOOL jppstream
if this target can return JPP-stream
Definition target_manager.h:51
targetlist_param
Target list parameters.
Definition target_manager.h:59
targetlist_param::first
target_param_t * first
first target pointer of the list
Definition target_manager.h:60
targetlist_param::last
target_param_t * last
last target pointer of the list
Definition target_manager.h:61
targetlist_param_t
struct targetlist_param targetlist_param_t
Target list 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
target_param_t
struct target_param target_param_t
target parameters
gene_target
target_param_t * gene_target(targetlist_param_t *targetlist, char *targetpath)
generate a target
Definition target_manager.c:79
search_targetBytid
target_param_t * search_targetBytid(const char tid[], targetlist_param_t *targetlist)
search a target by tid
Definition target_manager.c:242
search_target
target_param_t * search_target(const char targetname[], targetlist_param_t *targetlist)
search a target by target name
Definition target_manager.c:224
delete_targetlist
void delete_targetlist(targetlist_param_t **targetlist)
delete target list
Definition target_manager.c:192
print_target
void print_target(target_param_t *target)
print target parameters
Definition target_manager.c:205
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
delete_target_in_list
void delete_target_in_list(target_param_t **target, targetlist_param_t *targetlist)
delete a target in list
Definition target_manager.c:170
MAX_LENOFTID
#define MAX_LENOFTID
maximum length of target identifier
Definition target_manager.h:37
delete_target
void delete_target(target_param_t **target)
delete a target
Definition target_manager.c:146
print_alltarget
void print_alltarget(targetlist_param_t *targetlist)
print all target parameters
Definition target_manager.c:213
gene_targetlist
targetlist_param_t * gene_targetlist(void)
generate a target list
Definition target_manager.c:57