From 2ffaec40444a4add7d8e638e5b20a2f81daa18af Mon Sep 17 00:00:00 2001
From: Darker <mr.darker@163.com>
Date: 星期二, 25 二月 2025 17:27:42 +0800
Subject: [PATCH] 1. 合并代码
---
SourceCode/Bond/Servo/CStep.h | 27 +++++++++++++++++++++++++--
1 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/SourceCode/Bond/Servo/CStep.h b/SourceCode/Bond/Servo/CStep.h
index ec87aa0..628f116 100644
--- a/SourceCode/Bond/Servo/CStep.h
+++ b/SourceCode/Bond/Servo/CStep.h
@@ -3,6 +3,16 @@
namespace SERVO {
+#define STEP_EVENT_READDATA 0x01
+#define STEP_EVENT_COMPLETE 0x02
+
+ typedef std::function<void(void* pStep, int code, void* pData)> ONSTEPEVENT;
+ typedef struct _StepListener
+ {
+ ONSTEPEVENT onEvent;
+ } StepListener;
+
+ class CEquipment;
class CStep
{
public:
@@ -11,19 +21,31 @@
public:
unsigned WorkingProc();
+ void setListener(StepListener listener);
void setCcLink(CCCLinkIEControl* pCcLink);
+ void setEquipment(CEquipment* pEquipment);
+ CEquipment* getEquipment();
+ void setName(const char* pszName);
+ std::string& getName();
+ virtual void setWriteSignalDev(int dev);
virtual void init();
virtual void CStep::term();
virtual void onSignal(BOOL bSignal);
+ virtual int onReadData();
+ virtual int onComplete();
+ virtual int onTimeout();
protected:
inline void Lock() { EnterCriticalSection(&m_criticalSection); }
inline void Unlock() { LeaveCriticalSection(&m_criticalSection); }
inline void nextStep();
inline void resetStep();
- void timeout();
- private:
+ protected:
+ StepListener m_listener;
+ StationIdentifier m_station;
+ std::string m_strName;
+ CEquipment* m_pEquipment;
CCCLinkIEControl* m_pCclink;
CRITICAL_SECTION m_criticalSection;
std::string strName;
@@ -33,6 +55,7 @@
HANDLE m_hSignalOn;
HANDLE m_hSignalOff;
int m_nCurStep;
+ int m_nWriteSignalDev; // 对方BIT地址
};
}
--
Gitblit v1.9.3