]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/DelayPools.h
b1469cf14c5be8f91850b47478eb10df9fbba59c
2 * Copyright (C) 1996-2016 The Squid Software Foundation and contributors
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
9 #ifndef SQUID_DELAYPOOLS_H
10 #define SQUID_DELAYPOOLS_H
19 \defgroup DelayPoolsAPI Delay Pools API
23 /// \ingroup DelayPoolsAPI
28 virtual ~Updateable() {}
30 virtual void update(int) = 0;
33 /// \ingroup DelayPoolsAPI
39 static void Update(void *);
40 static unsigned short pools();
41 static void pools(unsigned short pools
);
42 static void FreePools();
43 static unsigned char *DelayClasses();
44 static void registerForUpdates(Updateable
*);
45 static void deregisterForUpdates (Updateable
*);
46 static long MemoryUsed
;
47 static DelayPool
*delay_data
;
50 static void Stats(StoreEntry
*);
51 static void InitDelayData();
52 static time_t LastUpdate
;
53 static unsigned short pools_
;
54 static void FreeDelayData ();
55 static std::vector
<Updateable
*> toUpdate
;
56 static void RegisterWithCacheManager(void);
59 #endif /* SQUID_DELAYPOOLS_H */