53 #ifndef SBG_ECOM_PROTOCOL_H
54 #define SBG_ECOM_PROTOCOL_H
69 #define SBG_ECOM_MAX_BUFFER_SIZE (4096)
70 #define SBG_ECOM_MAX_PAYLOAD_SIZE (4086)
71 #define SBG_ECOM_MAX_EXTENDED_PAYLOAD_SIZE (4081)
72 #define SBG_ECOM_SYNC_1 (0xFF)
73 #define SBG_ECOM_SYNC_2 (0x5A)
74 #define SBG_ECOM_ETX (0x33)
76 #define SBG_ECOM_RX_TIME_OUT (450)
Main header for the SBG Systems common C library.
const void * sbgEComProtocolPayloadGetBuffer(const SbgEComProtocolPayload *pPayload)
size_t sbgEComProtocolPayloadGetSize(const SbgEComProtocolPayload *pPayload)
void(* SbgEComProtocolFrameCb)(SbgEComProtocol *pProtocol, uint8_t msgClass, uint8_t msgId, SbgStreamBuffer *pReceivedFrame, void *pUserArg)
Definition: sbgEComProtocol.h:99
void * sbgEComProtocolPayloadMoveBuffer(SbgEComProtocolPayload *pPayload)
struct _SbgEComProtocolPayload SbgEComProtocolPayload
SbgErrorCode sbgEComProtocolInit(SbgEComProtocol *pProtocol, SbgInterface *pInterface)
SbgErrorCode sbgEComStartFrameGeneration(SbgStreamBuffer *pOutputStream, uint8_t msgClass, uint8_t msg, size_t *pStreamCursor)
SbgErrorCode sbgEComProtocolSend(SbgEComProtocol *pProtocol, uint8_t msgClass, uint8_t msg, const void *pData, size_t size)
SbgErrorCode sbgEComProtocolReceive2(SbgEComProtocol *pProtocol, uint8_t *pMsgClass, uint8_t *pMsgId, SbgEComProtocolPayload *pPayload)
void sbgEComProtocolSetOnFrameReceivedCb(SbgEComProtocol *pProtocol, SbgEComProtocolFrameCb pOnFrameReceivedCb, void *pUserArg)
SbgErrorCode sbgEComFinalizeFrameGeneration(SbgStreamBuffer *pOutputStream, size_t streamCursor)
SbgErrorCode sbgEComProtocolReceive(SbgEComProtocol *pProtocol, uint8_t *pMsgClass, uint8_t *pMsgId, void *pData, size_t *pSize, size_t maxSize)
void sbgEComProtocolPayloadConstruct(SbgEComProtocolPayload *pPayload)
SbgErrorCode sbgEComProtocolClose(SbgEComProtocol *pProtocol)
SbgErrorCode sbgEComProtocolPurgeIncoming(SbgEComProtocol *pProtocol)
#define SBG_ECOM_MAX_BUFFER_SIZE
Definition: sbgEComProtocol.h:69
void sbgEComProtocolPayloadDestroy(SbgEComProtocolPayload *pPayload)
enum _SbgErrorCode SbgErrorCode
This file implements the base interface for all Serial and Ethernet ports.
Used to read/write data from/to a memory buffer stream.
Definition: sbgEComProtocol.h:124
uint16_t pageIndex
Definition: sbgEComProtocol.h:145
uint8_t transferId
Definition: sbgEComProtocol.h:144
uint8_t * pLargeBuffer
Definition: sbgEComProtocol.h:140
size_t discardSize
Definition: sbgEComProtocol.h:128
SbgEComProtocolFrameCb pReceiveFrameCb
Definition: sbgEComProtocol.h:134
uint16_t nrPages
Definition: sbgEComProtocol.h:146
SbgInterface * pLinkedInterface
Definition: sbgEComProtocol.h:125
uint8_t msgClass
Definition: sbgEComProtocol.h:142
uint8_t msgId
Definition: sbgEComProtocol.h:143
uint8_t nextLargeTxId
Definition: sbgEComProtocol.h:129
void * pUserArg
Definition: sbgEComProtocol.h:135
size_t rxBufferSize
Definition: sbgEComProtocol.h:127
size_t largeBufferSize
Definition: sbgEComProtocol.h:141
uint8_t rxBuffer[SBG_ECOM_MAX_BUFFER_SIZE]
Definition: sbgEComProtocol.h:126
Definition: sbgEComProtocol.h:112
size_t size
Definition: sbgEComProtocol.h:115
void * pBuffer
Definition: sbgEComProtocol.h:114
bool allocated
Definition: sbgEComProtocol.h:113
Definition: sbgInterface.h:193
Definition: sbgStreamBufferCommon.h:201