]>
Commit | Line | Data |
---|---|---|
b67e2c8c | 1 | /* |
4ac4a490 | 2 | * Copyright (C) 1996-2017 The Squid Software Foundation and contributors |
b67e2c8c | 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. | |
b67e2c8c | 7 | */ |
bbc27441 AJ |
8 | |
9 | /* DEBUG: section 77 Delay Pools */ | |
10 | ||
b67e2c8c | 11 | #ifndef COMMONPOOL_H |
12 | #define COMMONPOOL_H | |
9a0a18de AJ |
13 | |
14 | #if USE_DELAY_POOLS | |
b67e2c8c | 15 | #include "CompositePoolNode.h" |
602d9612 | 16 | #include "SquidString.h" |
b67e2c8c | 17 | |
63be0a78 | 18 | /* |
19 | \ingroup DelayPoolsAPI | |
20 | * | |
21 | \todo Next steps: make this a composite, and TypeLabel a composite method. | |
26ac0430 | 22 | * Then we have a legacy composite which returns class 1/2/3, and new |
b67e2c8c | 23 | * composites which return a descriptor of some sort. |
24 | */ | |
62e76326 | 25 | class CommonPool |
26 | { | |
27 | ||
28 | public: | |
b67e2c8c | 29 | void *operator new(size_t); |
30 | void operator delete (void *); | |
b67e2c8c | 31 | static CommonPool *Factory (unsigned char _class, CompositePoolNode::Pointer&); |
bb790702 | 32 | char const* theClassTypeLabel() const {return typeLabel.termedBuf();} |
62e76326 | 33 | |
b67e2c8c | 34 | protected: |
35 | CommonPool(); | |
30abd221 | 36 | String typeLabel; |
b67e2c8c | 37 | }; |
62e76326 | 38 | |
9a0a18de | 39 | #endif /* USE_DELAY_POOLS */ |
b67e2c8c | 40 | #endif /* COMMONPOOL_H */ |
41 |