49 #include <sys/types.h>
57 template<
typename K,
typename V>
63 V *
Data() {
return &keydata;}
65 K
Key() {
return keyval;}
67 time_t
Time() {
return keytime;}
69 void Update(
int newcount, time_t newtime)
71 if (newtime) keytime = newtime;
74 void Set(V &keyData, time_t newtime)
98 template<
typename K,
typename V>
111 template<
typename K,
typename V>
126 V *
Add(K KeyVal, V &KeyData, time_t LifeTime=0,
138 V *
Find(K KeyVal, time_t *KeyTime=0);
142 int Num() {
return rashnum;}
150 V *
Rep(K KeyVal, V &KeyData,
const int LifeTime=0,
152 {
return Add(KeyVal, KeyData, LifeTime,
163 V *
Apply(
int (*func)(K, V,
void *),
void *Arg)
164 {
return Apply(rashTable, func, Arg);}
171 int (*func)(K, V,
void *),
void *Arg);
174 unsigned long long key2ull(K theKey);
void Set(V &keyData, time_t newtime)
void Update(int newcount, time_t newtime)
XrdOucRash_Item(K &KeyVal, V &KeyData, time_t KeyTime)
XrdOucRash_Tent< K, V > * Table
XrdOucRash_Item< K, V > * Item
V * Add(K KeyVal, V &KeyData, time_t LifeTime=0, XrdOucRash_Options opt=Rash_default)
V * Apply(int(*func)(K, V, void *), void *Arg)
V * Rep(K KeyVal, V &KeyData, const int LifeTime=0, XrdOucRash_Options opt=Rash_default)
V * Find(K KeyVal, time_t *KeyTime=0)