TcpLwip receive queue.
More...
#include <TcpLwipQueues.h>
◆ TcpLwipReceiveQueue()
| inet::tcp::TcpLwipReceiveQueue::TcpLwipReceiveQueue |
( |
| ) |
|
◆ ~TcpLwipReceiveQueue()
| inet::tcp::TcpLwipReceiveQueue::~TcpLwipReceiveQueue |
( |
| ) |
|
|
virtual |
◆ enqueueTcpLayerData()
| void inet::tcp::TcpLwipReceiveQueue::enqueueTcpLayerData |
( |
void * |
dataP, |
|
|
unsigned int |
dataLengthP |
|
) |
| |
|
virtual |
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.
124 dataBuffer.
push(makeShared<BytesChunk>(
static_cast<uint8_t *
>(dataP), dataLengthP));
Referenced by inet::tcp::TcpLwip::tcp_event_recv().
◆ extractBytesUpTo()
| Packet * inet::tcp::TcpLwipReceiveQueue::extractBytesUpTo |
( |
| ) |
|
|
virtual |
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
136 Packet *dataMsg =
nullptr;
139 if (queueLength >
b(0)) {
142 dataMsg->insertAtBack(data);
Referenced by inet::tcp::TcpLwipConnection::sendUpData().
◆ getAmountOfBufferedBytes()
| uint32_t inet::tcp::TcpLwipReceiveQueue::getAmountOfBufferedBytes |
( |
| ) |
const |
|
virtual |
Returns the number of bytes (out-of-order-segments) currently buffered in queue.
◆ getExtractableBytesUpTo()
| unsigned long inet::tcp::TcpLwipReceiveQueue::getExtractableBytesUpTo |
( |
| ) |
const |
|
virtual |
◆ getQueueLength()
| uint32_t inet::tcp::TcpLwipReceiveQueue::getQueueLength |
( |
| ) |
const |
|
virtual |
Returns the number of blocks currently buffered in queue.
◆ getQueueStatus()
| void inet::tcp::TcpLwipReceiveQueue::getQueueStatus |
( |
| ) |
const |
|
virtual |
Shows current queue status.
◆ notifyAboutIncomingSegmentProcessing()
| void inet::tcp::TcpLwipReceiveQueue::notifyAboutIncomingSegmentProcessing |
( |
Packet * |
packet, |
|
|
uint32_t |
seqNo, |
|
|
const void * |
bufferP, |
|
|
size_t |
bufferLengthP |
|
) |
| |
|
virtual |
◆ notifyAboutSending()
| void inet::tcp::TcpLwipReceiveQueue::notifyAboutSending |
( |
const TcpHeader * |
tcpsegP | ) |
|
|
virtual |
◆ setConnection()
◆ connM
◆ dataBuffer
| ChunkQueue inet::tcp::TcpLwipReceiveQueue::dataBuffer |
|
protected |
The documentation for this class was generated from the following files: