DelayId.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2025 The Squid Software Foundation and contributors
3  *
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.
7  */
8 
9 #ifndef SQUID_SRC_DELAYID_H
10 #define SQUID_SRC_DELAYID_H
11 
12 #if USE_DELAY_POOLS
13 
14 #include "base/forward.h"
15 #include "DelayIdComposite.h"
16 
17 class ClientHttpRequest;
18 class HttpReply;
19 
21 class DelayId
22 {
23 
24 public:
25  static DelayId DelayClient(ClientHttpRequest *, HttpReply *reply = nullptr);
26  DelayId ();
27  DelayId(unsigned short, const DelayIdComposite::Pointer &);
28  ~DelayId ();
29  unsigned short pool() const;
30  bool operator == (DelayId const &rhs) const;
31 
36  operator bool() const;
37 
38  int bytesWanted(int min, int max) const;
39  void bytesIn (int qty);
40  void setNoDelay(bool const);
41  void delayRead(const AsyncCallPointer &);
42 
43 private:
44  unsigned short pool_;
47 };
48 
49 #endif /* USE_DELAY_POOLS */
50 #endif /* SQUID_SRC_DELAYID_H */
51 
static DelayId DelayClient(ClientHttpRequest *, HttpReply *reply=nullptr)
Definition: DelayId.cc:64
unsigned short pool_
Definition: DelayId.h:44
unsigned short pool() const
Definition: DelayId.cc:43
bool operator==(DelayId const &rhs) const
Definition: DelayId.cc:49
DelayId()
Definition: DelayId.cc:28
int bytesWanted(int min, int max) const
Definition: DelayId.cc:119
const A & max(A const &lhs, A const &rhs)
bool markedAsNoDelay
Definition: DelayId.h:46
~DelayId()
Definition: DelayId.cc:39
void bytesIn(int qty)
Definition: DelayId.cc:135
void setNoDelay(bool const)
Definition: DelayId.cc:109
void delayRead(const AsyncCallPointer &)
Definition: DelayId.cc:144
DelayIdComposite::Pointer compositeId
Definition: DelayId.h:45
const A & min(A const &lhs, A const &rhs)

 

Introduction

Documentation

Support

Miscellaneous