mrDarker
2025-10-22 e8a27bb203fe2aff70390a5eca002d7438da9b0f
SourceCode/Bond/BondEq/CBonder.h
@@ -18,6 +18,9 @@
#define STATE_ERROR         3      /* 发生故障 */
#define ALARM_MONITOR      _T("警告信息")
typedef std::function<void(void* pFrom, int)> ONBONDSTATECHANGED;
typedef std::function<void(void* pFrom, int)> ONPLCSTATECHANGED;
typedef std::function<void(void* pFrom, const char* pszAddr, int port, int)> ONEFEMSTATECHANGED;
@@ -31,6 +34,7 @@
   ONRECVBROADCAST         onRecvBroadcast;
} BondListener;
class CModel;
class CBonder
{
public:
@@ -42,6 +46,8 @@
   void setListener(BondListener& listener);
   void setWorkDir(const char* pszWorkDir);
   const std::vector<CComponent*>& getComponents();
   void setModel(CModel* pModel);
   CPLC* getPLC(const char* pszName);
   int init();
   int term();
   void sendBroadcast(CComponent* pSender, CIntent* pIntent);
@@ -65,6 +71,10 @@
   int loadReady(BEQ::IUnit* pUnit, const char* pszMaterielId, const char* pszRecipeId);
   int loadComplete(BEQ::IUnit* pUnit, int layer);
   int unloadComplete(BEQ::IUnit* pUnit, int layer);
   double getTackTime();
   bool isMute();
   void setMute(bool bMute);
   void readTaktTime();
public:
   int writeInt(int unitId, int addr, int value);
@@ -107,9 +117,18 @@
   BOOL m_bAreYouThereRequest;
private:
   CModel* m_pModel;
   char* m_pPlcData;
   BEQ::IEquipment* m_pEquipment;
   std::map<int, CRecipe*> m_recipes;
   std::string m_strCurRecipeName;
private:
   bool m_bMute;
   bool m_bBlBtnsStates[7];   // 主页面按钮状态
   int m_nVelocityRatio;      // 速度比
   double m_dTactTime;         // 周期时间
   int m_nDayShiftCapacity;
   int m_nNightShiftCapacity;
};