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,
00080 char *cid);
00081
00087 void delete_cache(cache_param_t **cache);
00088
00095 void insert_cache_into_list(cache_param_t *cache, cachelist_param_t *cachelist);
00096
00097
00105 cache_param_t * search_cache(const char targetname[],
00106 cachelist_param_t *cachelist);
00107
00108
00116 cache_param_t * search_cacheBycsn(int csn, cachelist_param_t *cachelist);
00117
00118
00126 cache_param_t * search_cacheBycid(const char cid[],
00127 cachelist_param_t *cachelist);
00128
00129
00137 cache_param_t * search_cacheBytid(const char tid[],
00138 cachelist_param_t *cachelist);
00139
00146 void add_cachecid(const char *cid, cache_param_t *cache);
00147
00148
00155 void update_cachetid(const char *tid, cache_param_t *cache);
00156
00157
00164 void remove_cachecid(const char *cid, cachelist_param_t *cachelist);
00165
00166
00172 void print_cache(cache_param_t *cache);
00173
00179 void print_allcache(cachelist_param_t *cachelist);
00180
00181 #endif