#include <EDDDataPipe.h>
Public Member Functions | |
tcEDDDataPipe (void) | |
virtual | ~tcEDDDataPipe (void) |
virtual int | GetData (void *apBuffer, int anBufferSize, int TimeOutMs=100)=0 |
virtual int | SendMsg (void *apBuffer, int anMessageSize)=0 |
virtual int | GetMaxMessageLen (void)=0 |
uint32_t | NextSeqNo (void) |
Protected Attributes | |
uint32_t | mnSeqNo |
tracked sequence number for output messages |
OS abstraction layer for a data communications pipe. The data pipe is assumed reliable and sequential.
Definition at line 17 of file EDDDataPipe.h.
tcEDDDataPipe::tcEDDDataPipe | ( | void | ) | [inline] |
Definition at line 20 of file EDDDataPipe.h.
virtual tcEDDDataPipe::~tcEDDDataPipe | ( | void | ) | [inline, virtual] |
Definition at line 21 of file EDDDataPipe.h.
virtual int tcEDDDataPipe::GetData | ( | void * | apBuffer, | |
int | anBufferSize, | |||
int | TimeOutMs = 100 | |||
) | [pure virtual] |
Get available input data from a Data Pipe. The tcEDDMsgLoop periodically polls each data pipe for commands from a connected client using this method call.
apBuffer | pointer to buffer to store retrieved data | |
anBufferSize | size of the buffer in bytes | |
TimeOutMs | time to wait for data to arrive (may be zero) |
virtual int tcEDDDataPipe::GetMaxMessageLen | ( | void | ) | [pure virtual] |
This method is used to enforce maximum message lengths, which may be link layer specific (e.g., a UDP implementation may specify a maximum message size at approximately the MTU size). Transports which are not limited in size should specify a reasonable size, such as 16K bytes.
All EDD data source protocols support breaking down of data type (images, plots, etc.) into smaller message sets.
uint32_t tcEDDDataPipe::NextSeqNo | ( | void | ) | [inline] |
Utility method to get the next data pipe sequence number. The abstraction layer manages the updating of the message sequence numbers.
Definition at line 65 of file EDDDataPipe.h.
virtual int tcEDDDataPipe::SendMsg | ( | void * | apBuffer, | |
int | anMessageSize | |||
) | [pure virtual] |
Send a message out the data pipe.
apBuffer | pointer to the buffer containing the message to send. | |
anMessageSize | number of bytes to transmit |
uint32_t tcEDDDataPipe::mnSeqNo [protected] |