⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 communication.h

📁 用于DSP下摄像机的图像抓取、图像处理和传输、以及与上位机TCP/IP通信的工程文件。基于Texas Instruments Code Composer Studio实现。
💻 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 + -