#pragma once #include "IRemoteEquipment.h" namespace BEQ { typedef std::function ONREQCONNECTED; typedef std::function ONREQCONNECTFAILED; typedef std::function ONREQREAD; typedef std::function ONREQEVENTUPDATE; typedef struct _ServoListener { ONREQCONNECTED onRemoteEqConnecting; ONREQCONNECTED onRemoteEqConnected; ONREQCONNECTFAILED onRemoteEqConnectFailed; ONREQCONNECTED onRemoteEqDisconnecting; ONREQCONNECTED onRemoteEqDisconnected; ONREQREAD onRemoteEqReadRawdata; ONREQEVENTUPDATE onRemoteEqEventUpdate; } ServoListener; class IServo { public: virtual void setListener(BEQ::ServoListener listener) = 0; virtual int getName(char* pszBuffer, int nMaxCount) = 0; virtual int createRemoteEquipment(IRemoteEquipment*& pRemoteEquipment, const char* pszAddr, int port) = 0; virtual int connectRemoteEquipment(IRemoteEquipment* pRemoteEquipment) = 0; }; }