From 8322172ad4e6d5636b8c32b94d95f8abbce1ed54 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期五, 28 三月 2025 17:40:59 +0800
Subject: [PATCH] 1.修改CReadStep::onReadSignal信号为多类型,以便适应其它场景(如 Port type,mode)等使用。
---
SourceCode/Bond/Servo/CEquipment.h | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/Servo/CEquipment.h b/SourceCode/Bond/Servo/CEquipment.h
index 576adaa..57eed85 100644
--- a/SourceCode/Bond/Servo/CEquipment.h
+++ b/SourceCode/Bond/Servo/CEquipment.h
@@ -13,6 +13,8 @@
#include "CEqCimMessageClearStep.h"
#include "CEqDateTimeSetCmdStep.h"
#include "CEqVCREnableStep.h"
+#include "CEqPortChangeStep.h"
+#include "CEqReadIntStep.h"
#include <vector>
#include <map>
#include <list>
@@ -25,10 +27,12 @@
#define VCR_MAX 1
typedef std::function<void(void* pEiuipment, BOOL bAlive)> ONALIVE;
+ typedef std::function<void(void* pEiuipment, int code)> ONDATACHANGED;
typedef struct _EquipmentListener
{
ONALIVE onAlive;
ONALIVE onCimStateChanged;
+ ONDATACHANGED onDataChanged;
} EquipmentListener;
// Memory Block 结构体定义
@@ -92,6 +96,9 @@
virtual BOOL glassWillArrive(CGlass* pGlass);
virtual int outputGlass(int port);
virtual int glassArrived(CGlass* pGlass);
+ void getGlassList(std::list<CGlass*>& list);
+ CGlass* getFrontGlass();
+ BOOL removeClass(CGlass* pGlass);
// 以下为从CC-Link读取到的Bit标志位检测函数
public:
@@ -107,6 +114,8 @@
private:
BOOL isBitOn(const char* pszData, size_t size, int index);
inline BOOL equalBool(BOOL b1, BOOL b2);
+ void checkReadStepSignalStepSignal(unsigned int addr, const char* pszData, size_t size);
+ void checkWriteStepSignalStepSignal(unsigned int addr, const char* pszData, size_t size);
protected:
inline void Lock() { EnterCriticalSection(&m_criticalSection); }
--
Gitblit v1.9.3