40 lines
855 B
C++
40 lines
855 B
C++
#ifndef __EspSocket_H__
|
|
#define __EspSocket_H__
|
|
|
|
#include "Esp8266.h"
|
|
|
|
class EspSocket : public Object, public ITransport, public ISocket
|
|
{
|
|
protected:
|
|
Esp8266& _Host;
|
|
byte _Index;
|
|
int _Error;
|
|
|
|
public:
|
|
EspSocket(Esp8266& host, ProtocolType protocol, byte idx);
|
|
virtual ~EspSocket();
|
|
|
|
// 打开Socket
|
|
virtual bool OnOpen();
|
|
virtual void OnClose();
|
|
|
|
//// 应用配置,修改远程地址和端口
|
|
//virtual bool Change(const String& remote, ushort port);
|
|
|
|
virtual bool OnWrite(const Buffer& bs);
|
|
virtual uint OnRead(Buffer& bs);
|
|
|
|
// 发送数据
|
|
virtual bool Send(const Buffer& bs);
|
|
// 接收数据
|
|
virtual uint Receive(Buffer& bs);
|
|
|
|
// 收到数据
|
|
virtual void OnProcess(const Buffer& bs, const IPEndPoint& remote);
|
|
|
|
protected:
|
|
bool SendData(const String& cmd, const Buffer& bs);
|
|
};
|
|
|
|
#endif
|