123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- //data_def.h
- ///////////////////////////////////////////////////////////////////////////////
- ///////////////////////////////////////////////////////////////////////////////
- #ifndef _DATA_DEF_H_
- #define _DATA_DEF_H_
- ///////////////////////////////////////////////////////////////////////////////
- #if defined(__cplusplus)
- extern "C" {
- #endif //#if
- ///////////////////////////////////////////////////////////////////////////////
- typedef int TransportBool;
- typedef int TransportStatus;
- typedef char TransportData;
- typedef unsigned long TransportLength;
- typedef int TransportError;
- typedef unsigned long ULong;
- typedef unsigned short UShort;
- typedef unsigned long TransportHandle;
- ///////////////////////////////////////////////////////////////////////////////
- typedef enum _tagTransportBool
- {
- TRANSPORT_FALSE = 0,
- TRANSPORT_TRUE = 1
- } ETransportBool;
- //传输状态
- typedef enum _tagTransportStatus
- {
- TRANSPORT_UNKNOWN = -2,
- TRANSPORT_ERROR = -1,
- TRANSPORT_OK = 0,
- } ETransportStatus;
- //TPC类型
- typedef enum _tagTransportType
- {
- Transport_Undefined,
- Transport_Client,
- Transport_Server
- } ETransportType;
- //传输事件
- typedef enum _tagTransportEvents
- {
- Transport_ReadEv,
- Transport_WriteEv,
- Transport_AcceptEv,
- Transport_ConnectEv,
- Transport_CloseEv
- } ETransportEvent;
- //传输地址
- typedef struct _tagTransportAddress
- {
- ULong ip; /* 4 byte IP address, network format */
- UShort port; /* 2 byte port number, host format */
- } TransportAddress;
- /*协议头的数据结构*/
- typedef struct tagMessageHeader
- {
- BYTE byVersion; /*版本号说明版本的信息*/
- BYTE byHeaderFlag; /*标识符用来检测消息的正确性*/
- WORD wHeaderFlag; /*标识符用来检测消息的正确性*/
- WORD wMessageId; /*消息ID指明该消息的用途*/
- WORD wMessageSubId; /*子消息ID作为第2层消息的用途*/
- DWORD dwDataLen; /*数据长度是指除了协议头之外的消息长度*/
- WORD wCheckSum; /*校验和用来校验消息是否正确,暂时不用(填0)*/
- WORD wReserve; /*保留字暂时不用(填0)*/
- } TMessageHeader;
- /*协议头的标识符*/
- #define MESSAGE_HEADER_FLAG (0xCDAB)
- /*协议头的长度*/
- #define MESSAGE_HEADER_LEN ( (sizeof(TMessageHeader)) )
- /*/////////////////////////////////////////////////////////////////////////*/
- #define SERVER_PORT (5678)
- ///////////////////////////////////////////////////////////////////////////////
- ////////////////////////define callback functions//////////////////////////////
- /*net event callback*/
- typedef void (*LPTRANSPORT_EVENT)(
- IN SOCKET hSocket, IN ETransportEvent eEvent,
- IN void *pDataBuf, IN unsigned long nDataLen,
- IN int nError, IN void *pContext);
- /*obtain packet size from packet header callback*/
- typedef void (*LPTRANSPORT_GETDATABUFLEN)(
- IN SOCKET hSocket, IN void *pHeaderBuf,
- OUT unsigned long *nDataLen);
- ///////////////////////////////////////////////////////////////////////////////
- #if defined(__cplusplus)
- }
- #endif
- ///////////////////////////////////////////////////////////////////////////////
- #endif /*_DATA_DEF_H_*/
|