cctools
file_cache.h
1 /*
2 Copyright (C) 2003-2004 Douglas Thain and the University of Wisconsin
3 Copyright (C) 2005- The University of Notre Dame
4 This software is distributed under the GNU General Public License.
5 See the file COPYING for details.
6 */
7 
8 #ifndef FILE_CACHE_H
9 #define FILE_CACHE_H
10 
11 #include <sys/types.h>
12 
13 #include "int_sizes.h"
14 
15 struct file_cache *file_cache_init(const char *root);
16 void file_cache_fini(struct file_cache *c);
17 void file_cache_cleanup(struct file_cache *c);
18 
19 int file_cache_open(struct file_cache *c, const char *path, int flags, char *lpath, INT64_T size, time_t mtime);
20 int file_cache_delete(struct file_cache *f, const char *path);
21 int file_cache_contains(struct file_cache *f, const char *path, char *lpath);
22 
23 int file_cache_begin(struct file_cache *c, const char *path, char *txn);
24 int file_cache_commit(struct file_cache *c, const char *path, const char *txn);
25 int file_cache_abort(struct file_cache *c, const char *path, const char *txn);
26 
27 #endif