]> git.ipfire.org Git - thirdparty/squid.git/blame - src/DelayBucket.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / DelayBucket.h
CommitLineData
b67e2c8c 1/*
bde978a6 2 * Copyright (C) 1996-2015 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
12class DelaySpec;
e1f7507e
AJ
13class StoreEntry;
14
b67e2c8c 15/* don't use remote storage for these */
62e76326 16
63be0a78 17/// \ingroup DelayPoolsAPI
62e76326 18class DelayBucket
19{
20
b67e2c8c 21public:
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 34private:
35 int level_;
36};
37
38#endif /* SQUID_DELAYBUCKET_H */
f53969cc 39