]>
Commit | Line | Data |
---|---|---|
b67e2c8c | 1 | /* |
f70aedc4 | 2 | * Copyright (C) 1996-2021 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 | 8 | |
b67e2c8c | 9 | #ifndef SQUID_DELAYBUCKET_H |
10 | #define SQUID_DELAYBUCKET_H | |
11 | ||
12 | class DelaySpec; | |
e1f7507e AJ |
13 | class StoreEntry; |
14 | ||
b67e2c8c | 15 | /* don't use remote storage for these */ |
62e76326 | 16 | |
63be0a78 | 17 | /// \ingroup DelayPoolsAPI |
62e76326 | 18 | class DelayBucket |
19 | { | |
20 | ||
b67e2c8c | 21 | public: |
47a56efd AJ |
22 | DelayBucket() : level_(0) {} |
23 | ||
b67e2c8c | 24 | int const& level() const {return level_;} |
62e76326 | 25 | |
b67e2c8c | 26 | int & level() {return level_;} |
62e76326 | 27 | |
b67e2c8c | 28 | void stats(StoreEntry *)const; |
29 | void update (DelaySpec const &, int incr); | |
30 | int bytesWanted (int min, int max) const; | |
31 | void bytesIn(int qty); | |
32 | void init (DelaySpec const &); | |
62e76326 | 33 | |
b67e2c8c | 34 | private: |
35 | int level_; | |
36 | }; | |
37 | ||
38 | #endif /* SQUID_DELAYBUCKET_H */ | |
f53969cc | 39 |