summaryrefslogtreecommitdiff
path: root/libopie/pim/opimcache.h
Side-by-side diff
Diffstat (limited to 'libopie/pim/opimcache.h') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/pim/opimcache.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/libopie/pim/opimcache.h b/libopie/pim/opimcache.h
index 839550c..73414e5 100644
--- a/libopie/pim/opimcache.h
+++ b/libopie/pim/opimcache.h
@@ -1,43 +1,49 @@
#ifndef OPIE_PIM_CACHE_H
#define OPIE_PIM_CACHE_H
#include <qintcache.h>
#include "opimrecord.h"
template <class T = OPimRecord>
class OPimCacheItem {
public:
OPimCacheItem( const T& t = T() );
+ OPimCacheItem( const OPimCacheItem& );
~OPimCacheItem();
+ OPimCacheItem &operator=( const OPimCacheItem& );
+
T record()const;
void setRecord( const T& );
private:
T m_t;
};
/**
* OPimCache for caching the items
* We support adding, removing
* and finding
*/
template <class T = OPimRecord>
class OPimCache {
public:
typedef OPimCacheItem<T> Item;
OPimCache();
+ OPimCache( const OPimCache& );
~OPimCache();
+ OPimCache &operator=( const OPimCache& );
+
bool contains(int uid)const;
void invalidate();
void setSize( int size );
T find(int uid )const;
void add( const T& );
void remove( int uid );
void replace( const T& );
private:
QIntCache<Item> m_cache;
};