INET Framework for OMNeT++/OMNEST
|
Receive queue that manages "virtual bytes", that is, byte counts only. More...
#include <TcpLwipVirtualDataQueues.h>
Public Member Functions | |
TcpLwipVirtualDataReceiveQueue () | |
Ctor. More... | |
virtual | ~TcpLwipVirtualDataReceiveQueue () |
Virtual dtor. More... | |
virtual void | setConnection (TcpLwipConnection *connP) override |
Add a connection queue. More... | |
virtual void | notifyAboutIncomingSegmentProcessing (TCPSegment *tcpsegP, uint32 seqNo, const void *bufferP, size_t bufferLengthP) override |
Called when a TCP segment arrives, it should extract the payload from the segment and store it in the receive queue. More... | |
virtual void | enqueueTcpLayerData (void *dataP, unsigned int dataLengthP) override |
The method called when data received from LWIP The method should set status of the data in queue to received called after socket->read_data() successfull. More... | |
virtual cPacket * | extractBytesUpTo () override |
Should create a packet to be passed up to the app, up to (but NOT including) the given sequence no (usually rcv_nxt). More... | |
virtual uint32 | getAmountOfBufferedBytes () const override |
Returns the number of bytes (out-of-order-segments) currently buffered in queue. More... | |
virtual uint32 | getQueueLength () const override |
Returns the number of blocks currently buffered in queue. More... | |
virtual void | getQueueStatus () const override |
Shows current queue status. More... | |
virtual void | notifyAboutSending (const TCPSegment *tcpsegP) override |
notify the queue about output messages More... | |
Public Member Functions inherited from inet::tcp::TcpLwipReceiveQueue | |
TcpLwipReceiveQueue () | |
Ctor. More... | |
virtual | ~TcpLwipReceiveQueue () |
Virtual dtor. More... | |
Protected Attributes | |
long int | bytesInQueueM |
Protected Attributes inherited from inet::tcp::TcpLwipReceiveQueue | |
TcpLwipConnection * | connM |
Receive queue that manages "virtual bytes", that is, byte counts only.
inet::tcp::TcpLwipVirtualDataReceiveQueue::TcpLwipVirtualDataReceiveQueue | ( | ) |
Ctor.
|
virtual |
|
overridevirtual |
The method called when data received from LWIP The method should set status of the data in queue to received called after socket->read_data() successfull.
Implements inet::tcp::TcpLwipReceiveQueue.
|
overridevirtual |
Should create a packet to be passed up to the app, up to (but NOT including) the given sequence no (usually rcv_nxt).
It should return nullptr if there's no more data to be passed up – this method is called several times until it returns nullptr.
called after socket->read_data() successfull
Implements inet::tcp::TcpLwipReceiveQueue.
|
overridevirtual |
Returns the number of bytes (out-of-order-segments) currently buffered in queue.
Implements inet::tcp::TcpLwipReceiveQueue.
|
overridevirtual |
Returns the number of blocks currently buffered in queue.
Implements inet::tcp::TcpLwipReceiveQueue.
|
overridevirtual |
|
overridevirtual |
Called when a TCP segment arrives, it should extract the payload from the segment and store it in the receive queue.
The segment object should not be deleted. //FIXME revise this comment
Implements inet::tcp::TcpLwipReceiveQueue.
|
overridevirtual |
notify the queue about output messages
called when connM send out a packet. for read AckNo, if have
Implements inet::tcp::TcpLwipReceiveQueue.
|
overridevirtual |
Add a connection queue.
Reimplemented from inet::tcp::TcpLwipReceiveQueue.
|
protected |
Referenced by enqueueTcpLayerData(), extractBytesUpTo(), getAmountOfBufferedBytes(), getQueueLength(), and setConnection().