📄 communication.h
字号:
#ifndef __COMMUNICATION_H__
#define __COMMUNICATION_H__
#include <netmain.h>
//Communication type definition
#define COMMU_TCP 1
#define COMMU_RAW 2
#define COMMU_UDP 3
#define COMMU_IP 4
class CCommunication;
class CProtocal
{
public:
CProtocal(){};
virtual ~CProtocal(){};
virtual void ParseProcess(int nCommuType) = 0;
protected:
int m_nProtoType;
CCommunication* m_pCommunication;
};
class CCommunication
{
public:
CCommunication(){};
virtual ~CCommunication(){};
virtual int SendData(char* pBuffer, int nLen) = 0;
virtual int ReceiveData(char* pBuffer, int nLen, int nTimeout) = 0;
virtual int Init() = 0;
virtual void DoCommu() = 0;
virtual int SetProtocal(int nProtoType) = 0;
protected:
int m_nDelay;
int m_nTimeout;
int m_nCommuType;
int m_nProtoType;
CProtocal* m_pProto;
};
class CiLinkCommu : public CCommunication
{
public:
static struct sockaddr_in m_sockIPAddr;
struct sockaddr_in m_sockAddr;
SOCKET m_nMainSock;
SOCKET m_nSlaveSock;
SOCKET m_nSerialSock;
int m_nPort;
public:
// CiLinkCommu(int nCommuType, char* pBuf, unsigned int unBufLen);
CiLinkCommu(int nCommuType, int nTimeOut, int nPort, char* pBuf, unsigned int unBufLen);
virtual ~CiLinkCommu();
virtual int SendData(char * pBuffer, int nLen);
virtual int ReceiveData(char* pBuffer, int nLen, int nTimeout = 0);
virtual void DoCommu(void);
virtual int Init();
virtual int SetProtocal(int nProtoType);
int RecvSync();
int SendSync();
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -