DelayVector.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2017 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_DELAYVECTOR_H
10 #define SQUID_DELAYVECTOR_H
11 
12 #if USE_DELAY_POOLS
13 
14 #include "CompositePoolNode.h"
15 
18 {
20 
21 public:
23  DelayVector();
24  virtual ~DelayVector();
25  virtual void stats(StoreEntry * sentry);
26  virtual void dump(StoreEntry *entry) const;
27  virtual void update(int incr);
28  virtual void parse();
29 
32 
33 private:
34 
36  class Id:public DelayIdComposite
37  {
39 
40  public:
42  ~Id();
43  virtual int bytesWanted (int min, int max) const;
44  virtual void bytesIn(int qty);
45  virtual void delayRead(DeferredRead const &);
46 
47  private:
49  std::vector<DelayIdComposite::Pointer> ids;
50  typedef std::vector<DelayIdComposite::Pointer>::iterator iterator;
51  typedef std::vector<DelayIdComposite::Pointer>::const_iterator const_iterator;
52  };
53 
54  friend class Id;
55 
56  std::vector<CompositePoolNode::Pointer> pools;
57  typedef std::vector<CompositePoolNode::Pointer>::iterator iterator;
58  typedef std::vector<CompositePoolNode::Pointer>::const_iterator const_iterator;
59 };
60 
61 #endif /* USE_DELAY_POOLS */
62 #endif /* SQUID_DELAYVECTOR_H */
63 
virtual void stats(StoreEntry *sentry)
Definition: DelayVector.cc:29
virtual void parse()
Definition: DelayVector.cc:62
std::vector< DelayIdComposite::Pointer >::iterator iterator
Definition: DelayVector.h:50
void push_back(CompositePoolNode::Pointer)
Definition: DelayVector.cc:79
MEMPROXY_CLASS(DelayVector::Id)
RefCount< DelayVector > theVector
Definition: DelayVector.h:48
A const & max(A const &lhs, A const &rhs)
virtual DelayIdComposite::Pointer id(CompositeSelectionDetails &)
Definition: DelayVector.cc:73
MEMPROXY_CLASS(DelayVector)
virtual ~DelayVector()
Definition: DelayVector.cc:23
std::vector< DelayIdComposite::Pointer > ids
Definition: DelayVector.h:49
virtual void update(int incr)
Definition: DelayVector.cc:51
std::vector< CompositePoolNode::Pointer >::iterator iterator
Definition: DelayVector.h:57
virtual void dump(StoreEntry *entry) const
Definition: DelayVector.cc:40
virtual int bytesWanted(int min, int max) const
Definition: DelayVector.cc:101
std::vector< DelayIdComposite::Pointer >::const_iterator const_iterator
Definition: DelayVector.h:51
std::vector< CompositePoolNode::Pointer > pools
Definition: DelayVector.h:56
Id(RefCount< DelayVector >, CompositeSelectionDetails &)
Definition: DelayVector.cc:84
RefCount< DelayVector > Pointer
Definition: DelayVector.h:22
virtual void delayRead(DeferredRead const &)
Definition: DelayVector.cc:129
virtual void bytesIn(int qty)
Definition: DelayVector.cc:116
A const & min(A const &lhs, A const &rhs)
std::vector< CompositePoolNode::Pointer >::const_iterator const_iterator
Definition: DelayVector.h:58

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors