chenluhua1980
2026-01-24 2a7efcf2a4bac5e7f9813975c87683ea09fb984e
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
31
32
33
34
35
36
37
38
39
40
#pragma once
#include "IUnit.h"
#include <functional>
 
 
namespace BEQ {
    typedef std::function<void(void* pEiuipment, const char* pszAddr, int port)> ONCONNECTED;
    typedef std::function<void(void* pEiuipment, const char* pszAddr, int port)> ONDISCONNECTED;
    typedef std::function<int(void* pEiuipment, void* pUnit, int id)> ONRUNRECIPE;
    typedef std::function<int(void* pEiuipment, void* pUnit)> ONGETRECIPELIST;
    typedef std::function<int(void* pEiuipment, void* pUnit, const char* pszMaterielId, const char* pszRecipeId)> ONLOADREADY;
    typedef std::function<int(void* pEiuipment, void* pUnit, int layer)> ONLOADCOMPLETE;
 
    typedef struct _EquipmentListener
    {
        ONCONNECTED            onConnected;
        ONDISCONNECTED        onDisconnected;
        ONRUNRECIPE            onRunRecipe;
        ONGETRECIPELIST        onGetRecipeList;
        ONLOADREADY            onLoadReady;
        ONLOADCOMPLETE        onLoadComplete;
        ONLOADCOMPLETE        onUnloadComplete;
    } EquipmentListener;
 
    class IEquipment
    {
    public:
        virtual void setEquipmentListener(EquipmentListener listener) = 0;
        virtual int getName(char* pszBuffer, int nMaxCount) = 0;
        virtual void setName(const char* pszName) = 0;
        virtual int getVersion(char* pszBuffer, int nMaxCount) = 0;
        virtual void setVersion(const char* pszVersion) = 0;
        virtual IUnit* addUnit(const char* pszName, int nDoorCount) = 0;
        virtual IUnit* getUnit(const char* pszName) = 0;
        virtual int runOnClientMode(const char* pAddr, int port) = 0;
        virtual int runOnServerMode(int port) = 0;
        virtual int repRecipeListComplete() = 0;
        virtual int repLoadReadyComplete(int errorCode) = 0;
    };
}