]>
Commit | Line | Data |
---|---|---|
528b2c61 | 1 | /* |
bbc27441 | 2 | * Copyright (C) 1996-2014 The Squid Software Foundation and contributors |
528b2c61 | 3 | * |
bbc27441 AJ |
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. | |
528b2c61 | 7 | */ |
bbc27441 AJ |
8 | |
9 | /* DEBUG: section 13 High Level Memory Pool Management */ | |
10 | ||
528b2c61 | 11 | #ifndef SQUID_MEM |
12 | #define SQUID_MEM | |
13 | ||
8a89c28f FC |
14 | /* for mem_type */ |
15 | #include "enums.h" | |
16 | /* for FREE */ | |
17 | #include "typedefs.h" | |
18 | ||
427854fb | 19 | #include <iosfwd> |
27e059d4 | 20 | |
e1f7507e AJ |
21 | class StoreEntry; |
22 | class MemPoolStats; | |
23 | class MemPoolMeter; | |
62ee09ca | 24 | |
62e76326 | 25 | class Mem |
26 | { | |
27 | ||
528b2c61 | 28 | public: |
62e76326 | 29 | static void Init(); |
97244680 | 30 | static void Report(); |
62e76326 | 31 | static void Stats(StoreEntry *); |
32 | static void CleanIdlePools(void *unused); | |
c21ad0f5 | 33 | static void Report(std::ostream &); |
34 | static void PoolReport(const MemPoolStats * mp_st, const MemPoolMeter * AllMeter, std::ostream &); | |
ea391f18 FC |
35 | |
36 | protected: | |
37 | static void RegisterWithCacheManager(void); | |
528b2c61 | 38 | }; |
39 | ||
43d1bbe4 FC |
40 | extern const size_t squidSystemPageSize; |
41 | ||
8a648e8d FC |
42 | void memClean(void); |
43 | void memInitModule(void); | |
44 | void memCleanModule(void); | |
45 | void memConfigure(void); | |
46 | void *memAllocate(mem_type); | |
47 | void *memAllocString(size_t net_size, size_t * gross_size); | |
48 | void *memAllocBuf(size_t net_size, size_t * gross_size); | |
49 | void *memReallocBuf(void *buf, size_t net_size, size_t * gross_size); | |
50 | void memFree(void *, int type); | |
51 | void memFreeString(size_t size, void *); | |
52 | void memFreeBuf(size_t size, void *); | |
53 | FREE *memFreeBufFunc(size_t size); | |
54 | int memInUse(mem_type); | |
3b08e399 | 55 | void memDataInit(mem_type, const char *, size_t, int, bool doZero = true); |
8a648e8d FC |
56 | void memCheckInit(void); |
57 | void memConfigure(void); | |
8a89c28f | 58 | |
528b2c61 | 59 | #endif /* SQUID_MEM */ |