24 #ifndef PENDING_DATA_H 
   25 #define PENDING_DATA_H 
   27 #include "ns3/packet.h" 
   29 #include "ns3/sequence-number.h" 
   51   PendingData (uint32_t s, uint8_t* d = NULL, uint32_t msg = 0, uint32_t resp = 0);
 
   74   virtual void Clear ();
 
   81   virtual void Add (uint32_t s, 
const uint8_t* d = 0); 
 
  176   std::vector<Ptr<Packet> > 
data;         
 
virtual Ptr< Packet > CopyFromSeq(uint32_t s, const SequenceNumber32 &f, const SequenceNumber32 &o)
Copy data starting from a give offset. 
 
PendingData * CopySD(uint32_t s, uint8_t *d)
Create a copy of self with new size, new data. 
 
uint32_t responseSize
Size of response requested. 
 
virtual void Add(uint32_t s, const uint8_t *d=0)
Add some data to end. 
 
virtual uint32_t RemoveToSeq(const SequenceNumber32 &seqFront, const SequenceNumber32 &seqOffset)
Permits object to clear any pending data between seqFront and seqOffset - 1). 
 
PendingData * Copy() const 
Create a copy of self. 
 
virtual uint32_t SizeFromOffset(uint32_t offset)
 
PendingData * CopyS(uint32_t s)
Create a copy of self with new size. 
 
class for managing I/O between applications and TCP 
 
virtual void Clear()
Remove all associated data. 
 
uint32_t size
Number of data bytes. 
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
uint32_t Size() const 
Returns the size of the pending data. 
 
virtual Ptr< Packet > CopyFromOffset(uint32_t s, uint32_t o)
Copy data starting from a give offset. 
 
uint32_t msgSize
Total size of message. 
 
virtual uint32_t SizeFromSeq(const SequenceNumber32 &seqFront, const SequenceNumber32 &seqOffset)
This method returns the number of bytes in the PendingData buffer beyond the sequence number specifie...
 
virtual uint32_t OffsetFromSeq(const SequenceNumber32 &seqFront, const SequenceNumber32 &seqOffset)
Subtracts seqFront from seqOffset after enforcing seqFront is less than seqOffset. 
 
std::vector< Ptr< Packet > > data
Corresponding data (may be null)