Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members

PacketSRR Class Reference

Collaboration diagram for PacketSRR:

Collaboration graph
[legend]
List of all members.

Protected Member Functions

void enque (Packet *p)
Packetdeque ()
Packetlookup (int n)

Protected Attributes

int pkts
int bcount
int deficitCounter
int turn
int queueid
Packethead_
Packettail_
int len_

Private Member Functions

 PacketSRR ()

Friends

class SRR

Constructor & Destructor Documentation

PacketSRR::PacketSRR  )  [inline, private]
 

Definition at line 81 of file srr.cc.

References bcount, deficitCounter, head_, len_, pkts, tail_, and turn.

00081 : pkts(0),bcount(0),deficitCounter(0),turn(0),head_(0), tail_(0), len_(0) {}


Member Function Documentation

Packet* PacketSRR::deque void   )  [inline, protected]
 

Definition at line 103 of file srr.cc.

References head_, len_, Packet::next_, and tail_.

Referenced by SRR::deque().

00103                                {
00104                 if (!head_) return 0;
00105                 Packet* p = head_;
00106                 head_= p->next_; // 0 if p == tail_
00107                 if (p == tail_) head_= tail_= 0;
00108                 --len_;
00109                 return p;
00110         }

void PacketSRR::enque Packet p  )  [inline, protected]
 

Definition at line 93 of file srr.cc.

References head_, len_, Packet::next_, and tail_.

Referenced by SRR::enque().

00093                                      {
00094 
00095                 if (!tail_) head_= tail_= p;
00096                 else {
00097                         tail_->next_= p;
00098                         tail_= p;
00099                 }
00100                 tail_->next_= 0;
00101                 ++len_;
00102         }

Packet* PacketSRR::lookup int  n  )  [inline, protected]
 

Definition at line 111 of file srr.cc.

References head_, and Packet::next_.

Referenced by SRR::deque().

00111                               {
00112                 for (Packet* p = head_; p != 0; p = p->next_) {
00113                         if (--n < 0)
00114                                 return (p);
00115                 }
00116                 return (0);
00117         }


Friends And Related Function Documentation

friend class SRR [friend]
 

Definition at line 82 of file srr.cc.


Member Data Documentation

int PacketSRR::bcount [protected]
 

Definition at line 85 of file srr.cc.

Referenced by SRR::enque(), SRR::getMaxflow(), and PacketSRR().

int PacketSRR::deficitCounter [protected]
 

Definition at line 86 of file srr.cc.

Referenced by SRR::deque(), SRR::enque(), and PacketSRR().

Packet* PacketSRR::head_ [protected]
 

Definition at line 90 of file srr.cc.

Referenced by deque(), enque(), lookup(), and PacketSRR().

int PacketSRR::len_ [protected]
 

Definition at line 91 of file srr.cc.

Referenced by deque(), enque(), and PacketSRR().

int PacketSRR::pkts [protected]
 

Definition at line 84 of file srr.cc.

Referenced by SRR::clear(), SRR::enque(), and PacketSRR().

int PacketSRR::queueid [protected]
 

Definition at line 88 of file srr.cc.

Packet * PacketSRR::tail_ [protected]
 

Definition at line 90 of file srr.cc.

Referenced by deque(), enque(), and PacketSRR().

int PacketSRR::turn [protected]
 

Definition at line 87 of file srr.cc.

Referenced by SRR::deque(), and PacketSRR().


The documentation for this class was generated from the following file:
Generated on Tue Apr 20 13:06:48 2004 for NS2.26SourcesOriginal by doxygen 1.3.3