LAPTOP-SNT8I5JK\Boounion
2025-01-21 ccbda3e4f7ed430843fbc0190e8ee0d0f0e3a721
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#pragma once
#include "IRemoteEquipment.h"
 
 
namespace BEQ {
    typedef std::function<void(void* pServo, void* pRemoteEiuipment)> ONREQCONNECTED;
    typedef std::function<void(void* pServo, void* pRemoteEiuipment, int errorCode)> ONREQCONNECTFAILED;
    typedef std::function<void(void* pServo, void* pRemoteEiuipment, const char* pszData, int len)> ONREQREAD;
    typedef std::function<void(void* pServo, void* pRemoteEquipment, void* pUnit, REMOTE_EQ_EVENT eventCode)> 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;
    };
}