00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef CACHE_MANAGER_H_
00032 # define CACHE_MANAGER_H_
00033
00034 #include "metadata_manager.h"
00035 #include "ihdrbox_manager.h"
00036
00038 typedef struct cache_param{
00039 char *filename;
00040 char *tid;
00041 int csn;
00042 char **cid;
00043 int numOfcid;
00044 metadatalist_param_t *metadatalist;
00045 ihdrbox_param_t *ihdrbox;
00046 struct cache_param *next;
00047 } cache_param_t;
00048
00050 typedef struct cachelist_param{
00051 cache_param_t *first;
00052 cache_param_t *last;
00053 } cachelist_param_t;
00054
00055
00061 cachelist_param_t * gene_cachelist(void);
00062
00068 void delete_cachelist(cachelist_param_t **cachelist);
00069
00079 cache_param_t * gene_cache( const char *targetname, int csn, char *tid, char *cid);
00080
00086 void delete_cache( cache_param_t **cache);
00087
00094 void insert_cache_into_list( cache_param_t *cache, cachelist_param_t *cachelist);
00095
00096
00104 cache_param_t * search_cache( const char targetname[], cachelist_param_t *cachelist);
00105
00106
00114 cache_param_t * search_cacheBycsn( int csn, cachelist_param_t *cachelist);
00115
00116
00124 cache_param_t * search_cacheBycid( const char cid[], cachelist_param_t *cachelist);
00125
00126
00134 cache_param_t * search_cacheBytid( const char tid[], cachelist_param_t *cachelist);
00135
00142 void add_cachecid( const char *cid, cache_param_t *cache);
00143
00144
00151 void update_cachetid( const char *tid, cache_param_t *cache);
00152
00153
00160 void remove_cachecid( const char *cid, cachelist_param_t *cachelist);
00161
00162
00168 void print_cache( cache_param_t *cache);
00169
00175 void print_allcache( cachelist_param_t *cachelist);
00176
00177 #endif