chiark
/
gitweb
/
~mdw
/
disorder
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
more template work
[disorder]
/
lib
/
cache.h
diff --git
a/lib/cache.h
b/lib/cache.h
index 7a49fd9079df1bf96fda5b18f7d6bae386e868d4..26fa3dd3588acdfd8af503a27f9ae9c9f2ff50f8 100644
(file)
--- a/
lib/cache.h
+++ b/
lib/cache.h
@@
-1,6
+1,6
@@
/*
* This file is part of DisOrder
/*
* This file is part of DisOrder
- * Copyright (C) 2006 Richard Kettlewell
+ * Copyright (C) 2006
-2008
Richard Kettlewell
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@
-17,14
+17,22
@@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*/
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*/
+/** @file lib/cache.h
+ * @brief Object caching
+ *
+ * There is a single cache for the whole process. Objects of different types
+ * are distinguished. Objects might be thrown out of the cache at any point.
+ */
#ifndef CACHE_H
#define CACHE_H
/* Defines a cache mapping keys to typed data items */
#ifndef CACHE_H
#define CACHE_H
/* Defines a cache mapping keys to typed data items */
+/** @brief Type of a cache object */
struct cache_type {
struct cache_type {
- int lifetime; /* Lifetime of a cache entry */
+ /** @brief Lifetime for objects of this type (seconds) */
+ int lifetime;
};
void cache_put(const struct cache_type *type,
};
void cache_put(const struct cache_type *type,
@@
-41,6
+49,9
@@
void cache_expire(void);
void cache_clean(const struct cache_type *type);
/* Clean all elements of a particular type, or all elements if TYPE=0 */
void cache_clean(const struct cache_type *type);
/* Clean all elements of a particular type, or all elements if TYPE=0 */
+size_t cache_count(void);
+/* Return the size of the cache */
+
#endif /* CACHE_H */
/*
#endif /* CACHE_H */
/*