From d68541dce155a682f65b7c3fbfbfbeef17ea5b8f Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期一, 12 五月 2025 12:00:41 +0800
Subject: [PATCH] 1.StoredJob, Fetched out Job实现; 2.CStep增加定制的Attribute, 以便通过的Step不使用getAttributeVector也能添加不一样的Attribute;

---
 SourceCode/Bond/Servo/Common.h |  355 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 340 insertions(+), 15 deletions(-)

diff --git a/SourceCode/Bond/Servo/Common.h b/SourceCode/Bond/Servo/Common.h
index 39897aa..5cf76f2 100644
--- a/SourceCode/Bond/Servo/Common.h
+++ b/SourceCode/Bond/Servo/Common.h
@@ -9,15 +9,29 @@
 #define RX_HSMS_TERMINAL_TEXT			1003
 #define RX_CODE_EQ_ALIVE				1004
 #define RX_CODE_STEP_EVENT_READDATA		1005
+#define RX_CODE_SELECT_EQUIPMENT		1006
+#define RX_CODE_SELECT_STEP				1007
+#define RX_CODE_ALARM_SET				1008
+#define RX_CODE_ALARM_CLEAR				1009
+#define RX_CODE_EQ_DATA_CHANGED			1010
+
 
 /* Channel Name */
 #define MC_CHANNEL1_NAME		"McChannel1"
 
 
 /* 颜色 */
-#define APPDLG_BACKGROUND_COLOR			RGB(255, 255, 255)
-#define LOGDLG_BACKGROUND_COLOR			RGB(255, 255, 255)
-#define PANEL_MASTER_BACKGROUND_COLOR	RGB(255, 255, 255)
+#define APPDLG_BACKGROUND_COLOR				RGB(255, 255, 255)
+#define LOGDLG_BACKGROUND_COLOR				RGB(255, 255, 255)
+#define PANEL_MASTER_BACKGROUND_COLOR		RGB(255, 255, 255)
+#define PANEL_ATTRIBUTES_BACKGROUND_COLOR	RGB(255, 255, 255)
+#define PANEL_EQUIPMENT_BACKGROUND_COLOR	RGB(255, 255, 255)
+#define PAGE_GRPAH1_BACKGROUND_COLOR		RGB(255, 255, 255)
+#define PAGE_GRPAH2_BACKGROUND_COLOR		RGB(255, 255, 255)
+#define EQ_BOX_OFFLINE						RGB(222, 222, 222)
+#define EQ_BOX_ONLINE						RGB(0, 176, 80)
+#define EQ_BOX_FRAME1						RGB(22, 22, 22)
+#define EQ_BOX_FRAME2						RGB(255, 127, 39)
 
 
 /* LOG BTN */
@@ -37,23 +51,254 @@
 #define BTN_ALARM_BKGND_PRESS			RGB(133, 203, 225)
 
 /* Equipment ID */
-#define EQ_ID_EFEM			1
-#define EQ_ID_Bonder1		2
-#define EQ_ID_Bonder2		3
+#define EQ_ID_EFEM				1
+#define EQ_ID_Bonder1			2
+#define EQ_ID_Bonder2			3
+#define EQ_ID_LOADPORT1			4
+#define EQ_ID_LOADPORT2			5
+#define EQ_ID_LOADPORT3			6
+#define EQ_ID_LOADPORT4			7
+#define EQ_ID_FLIPER			8
+#define EQ_ID_VACUUMBAKE		9
+#define EQ_ID_ALIGNER			10
+#define EQ_ID_BAKE_COOLING		11
+#define EQ_ID_ARM				12
+#define EQ_ID_ARM_TRAY1			13
+#define EQ_ID_ARM_TRAY2			14
+#define EQ_ID_OPERATOR_REMOVE	999
 
 
 /* step name */
-#define STEP_MODE			_T("EQMode")
-#define STEP_STATUS			_T("EQStatus")
-#define STEP_ALARM_START	_T("EQAlarm")
-#define STEP_ALARM_BLOCK1	_T("EQAlarm1")
-#define STEP_ALARM_BLOCK2	_T("EQAlarm2")
-#define STEP_ALARM_BLOCK3	_T("EQAlarm3")
-#define STEP_ALARM_BLOCK4	_T("EQAlarm4")
-#define STEP_ALARM_BLOCK5	_T("EQAlarm5")
-#define STEP_PROCESS		_T("EQProcess")
+#define STEP_MODE						_T("EQMode")
+#define STEP_STATUS						_T("EQStatus")
+#define STEP_ALARM_START				_T("EQAlarm")
+#define STEP_ALARM_BLOCK1				_T("EQAlarm1")
+#define STEP_ALARM_BLOCK2				_T("EQAlarm2")
+#define STEP_ALARM_BLOCK3				_T("EQAlarm3")
+#define STEP_ALARM_BLOCK4				_T("EQAlarm4")
+#define STEP_ALARM_BLOCK5				_T("EQAlarm5")
+#define STEP_PROCESS					_T("EQProcess")
+#define STEP_CIM_MODE_CHANGE			_T("EQCimModeChange")
+#define STEP_EQ_MODE_CHANGE				_T("EQModeChange")
+#define STEP_CIM_MESSAGE_CMD			_T("EQCimMessageCmd")
+#define STEP_CIM_MESSAGE_CLEAR			_T("EQCimMessageClear")
+#define STEP_DATETIME_SET_CMD			_T("EQDateTimeSetCmd")
+#define STEP_EQ_VCR_ENABLE				_T("EQVCREnable")
+#define STEP_EQ_PORT1_TYPE				_T("EQPort1Type")
+#define STEP_EQ_PORT1_MODE				_T("EQPort1Mode")
+#define STEP_EQ_PORT1_CASSETTE_TYPE		_T("EQPort1CassetteType")
+#define STEP_EQ_PORT1_TRANSFER_MODE		_T("EQPort1TransferMode")
+#define STEP_EQ_PORT1_ENABLE			_T("EQPort1Enable")
+#define STEP_EQ_PORT1_TYPE_ATUO			_T("EQPort1TypeAuto")
+#define STEP_EQ_PORT2_TYPE				_T("EQPort2Type")
+#define STEP_EQ_PORT2_MODE				_T("EQPort2Mode")
+#define STEP_EQ_PORT2_CASSETTE_TYPE		_T("EQPort2CassetteType")
+#define STEP_EQ_PORT2_TRANSFER_MODE		_T("EQPort2TransferMode")
+#define STEP_EQ_PORT2_ENABLE			_T("EQPort2Enable")
+#define STEP_EQ_PORT2_TYPE_ATUO			_T("EQPort2TypeAuto")
+#define STEP_EQ_PORT3_TYPE				_T("EQPort3Type")
+#define STEP_EQ_PORT3_MODE				_T("EQPort3Mode")
+#define STEP_EQ_PORT3_CASSETTE_TYPE		_T("EQPort3CassetteType")
+#define STEP_EQ_PORT3_TRANSFER_MODE		_T("EQPort3TransferMode")
+#define STEP_EQ_PORT3_ENABLE			_T("EQPort3Enable")
+#define STEP_EQ_PORT3_TYPE_ATUO			_T("EQPort3TypeAuto")
+#define STEP_EQ_PORT4_TYPE				_T("EQPort4Type")
+#define STEP_EQ_PORT4_MODE				_T("EQPort4Mode")
+#define STEP_EQ_PORT4_CASSETTE_TYPE		_T("EQPort4CassetteType")
+#define STEP_EQ_PORT4_TRANSFER_MODE		_T("EQPort4TransferMode")
+#define STEP_EQ_PORT4_ENABLE			_T("EQPort4Enable")
+#define STEP_EQ_PORT4_TYPE_ATUO			_T("EQPort4TypeAuto")
+#define STEP_EQ_P1_CASSETTE_EMPTY		_T("EQPort1CassetteEmpty")
+#define STEP_EQ_P1_CASSETTE_LOAD_EADY	_T("EQPort1CassetteLoadReady")
+#define STEP_EQ_P1_CASSETTE_LOADED		_T("EQPort1CassetteLoaded")
+#define STEP_EQ_P1_CASSETTE_INUSE		_T("EQPort1CassetteInUse")
+#define STEP_EQ_P1_CASSETTE_UNLOAD_EADY	_T("EQPort1CassetteUnloadReady")
+#define STEP_EQ_P1_CASSETTE_BLOCKED		_T("EQPort1CassetteBlocked")
+#define STEP_EQ_P2_CASSETTE_EMPTY		_T("EQPort2CassetteEmpty")
+#define STEP_EQ_P2_CASSETTE_LOAD_EADY	_T("EQPort2CassetteLoadReady")
+#define STEP_EQ_P2_CASSETTE_LOADED		_T("EQPort2CassetteLoaded")
+#define STEP_EQ_P2_CASSETTE_INUSE		_T("EQPort2CassetteInUse")
+#define STEP_EQ_P2_CASSETTE_UNLOAD_EADY	_T("EQPort2CassetteUnloadReady")
+#define STEP_EQ_P2_CASSETTE_BLOCKED		_T("EQPort2CassetteBlocked")
+#define STEP_EQ_P3_CASSETTE_EMPTY		_T("EQPort3CassetteEmpty")
+#define STEP_EQ_P3_CASSETTE_LOAD_EADY	_T("EQPort3CassetteLoadReady")
+#define STEP_EQ_P3_CASSETTE_LOADED		_T("EQPort3CassetteLoaded")
+#define STEP_EQ_P3_CASSETTE_INUSE		_T("EQPort3CassetteInUse")
+#define STEP_EQ_P3_CASSETTE_UNLOAD_EADY	_T("EQPort3CassetteUnloadReady")
+#define STEP_EQ_P3_CASSETTE_BLOCKED		_T("EQPort3CassetteBlocked")
+#define STEP_EQ_P4_CASSETTE_EMPTY		_T("EQPort4CassetteEmpty")
+#define STEP_EQ_P4_CASSETTE_LOAD_EADY	_T("EQPort4CassetteLoadReady")
+#define STEP_EQ_P4_CASSETTE_LOADED		_T("EQPort4CassetteLoaded")
+#define STEP_EQ_P4_CASSETTE_INUSE		_T("EQPort4CassetteInUse")
+#define STEP_EQ_P4_CASSETTE_UNLOAD_EADY	_T("EQPort4CassetteUnloadReady")
+#define STEP_EQ_P4_CASSETTE_BLOCKED		_T("EQPort4CassetteBlocked")
+#define STEP_EQ_P1_CASSETTE_CTRL_CMD	_T("EQPort1CassetteCtrlCmd")
+#define STEP_EQ_P2_CASSETTE_CTRL_CMD	_T("EQPort2CassetteCtrlCmd")
+#define STEP_EQ_P3_CASSETTE_CTRL_CMD	_T("EQPort3CassetteCtrlCmd")
+#define STEP_EQ_P4_CASSETTE_CTRL_CMD	_T("EQPort4CassetteCtrlCmd")
+#define STEP_EQ_CIM_MESSAGE_CONFIRM		_T("EQCimMessageConfirm")
+#define STEP_EQ_RECEIVED_JOB_UPS1		_T("EQJEReceivedJobUps1")
+#define STEP_EQ_RECEIVED_JOB_UPS2		_T("EQJEReceivedJobUps2")
+#define STEP_EQ_SENT_OUT_JOB_DOWNS1		_T("EQJESentOutJobDowns1")
+#define STEP_EQ_SENT_OUT_JOB_DOWNS2		_T("EQJESentOutJobDowns2")
+#define STEP_EQ_VCR1_EVENT_REPORT		_T("EQVcr1EventReport")
+#define STEP_EQ_RURRENT_RECIPE_CHANGE	_T("EQCurrentRecipeChange")
+#define STEP_EQ_MASTER_RECIPE_LIST_REQ	_T("EQMasterRecipeListReq")
+#define STEP_EQ_MASTER_RECIPE_LIST		_T("EQMasterRecipeListReport")
+#define STEP_EQ_RECIPE_PARAMETER_REQ	_T("EQRecipeParameterReq")
+#define STEP_EQ_RECIPE_PARAMETER		_T("EQRecipeParameterReport")
+#define STEP_EQ_RECEIVED_JOBn			_T("EQReceivedJobReport")
+#define STEP_EQ_RECEIVED_JOB1			_T("EQReceivedJobReport1")
+#define STEP_EQ_RECEIVED_JOB2			_T("EQReceivedJobReport2")
+#define STEP_EQ_RECEIVED_JOB3			_T("EQReceivedJobReport3")
+#define STEP_EQ_RECEIVED_JOB4			_T("EQReceivedJobReport4")
+#define STEP_EQ_RECEIVED_JOB5			_T("EQReceivedJobReport5")
+#define STEP_EQ_RECEIVED_JOB6			_T("EQReceivedJobReport6")
+#define STEP_EQ_RECEIVED_JOB7			_T("EQReceivedJobReport7")
+#define STEP_EQ_RECEIVED_JOB8			_T("EQReceivedJobReport8")
+#define STEP_EQ_RECEIVED_JOB9			_T("EQReceivedJobReport9")
+#define STEP_EQ_FETCHED_OUT_JOBn		_T("EQFetchedOutJobReport")
+#define STEP_EQ_FETCHED_OUT_JOB1		_T("EQFetchedOutJobReport1")
+#define STEP_EQ_FETCHED_OUT_JOB2		_T("EQFetchedOutJobReport2")
+#define STEP_EQ_FETCHED_OUT_JOB3		_T("EQFetchedOutJobReport3")
+#define STEP_EQ_FETCHED_OUT_JOB4		_T("EQFetchedOutJobReport4")
+#define STEP_EQ_FETCHED_OUT_JOB5		_T("EQFetchedOutJobReport5")
+#define STEP_EQ_FETCHED_OUT_JOB6		_T("EQFetchedOutJobReport6")
+#define STEP_EQ_FETCHED_OUT_JOB7		_T("EQFetchedOutJobReport7")
+#define STEP_EQ_FETCHED_OUT_JOB8		_T("EQFetchedOutJobReport8")
+#define STEP_EQ_FETCHED_OUT_JOB9		_T("EQFetchedOutJobReport9")
+#define STEP_EQ_FETCHED_OUT_JOB10		_T("EQFetchedOutJobReport10")
+#define STEP_EQ_FETCHED_OUT_JOB11		_T("EQFetchedOutJobReport11")
+#define STEP_EQ_FETCHED_OUT_JOB12		_T("EQFetchedOutJobReport12")
+#define STEP_EQ_FETCHED_OUT_JOB13		_T("EQFetchedOutJobReport13")
+#define STEP_EQ_FETCHED_OUT_JOB14		_T("EQFetchedOutJobReport14")
+#define STEP_EQ_FETCHED_OUT_JOB15		_T("EQFetchedOutJobReport15")
+#define STEP_EQ_STORED_JOBn				_T("EQStoredJobReport")
+#define STEP_EQ_STORED_JOB1				_T("EQStoredJobReport1")
+#define STEP_EQ_STORED_JOB2				_T("EQStoredJobReport2")
+#define STEP_EQ_STORED_JOB3				_T("EQStoredJobReport3")
+#define STEP_EQ_STORED_JOB4				_T("EQStoredJobReport4")
+#define STEP_EQ_STORED_JOB5				_T("EQStoredJobReport5")
+#define STEP_EQ_STORED_JOB6				_T("EQStoredJobReport6")
+#define STEP_EQ_STORED_JOB7				_T("EQStoredJobReport7")
+#define STEP_EQ_STORED_JOB8				_T("EQStoredJobReport8")
+#define STEP_EQ_STORED_JOB9				_T("EQStoredJobReport9")
+#define STEP_EQ_STORED_JOB10			_T("EQStoredJobReport10")
+#define STEP_EQ_STORED_JOB11			_T("EQStoredJobReport11")
+#define STEP_EQ_STORED_JOB12			_T("EQStoredJobReport12")
+#define STEP_EQ_STORED_JOB13			_T("EQStoredJobReport13")
+#define STEP_EQ_STORED_JOB14			_T("EQStoredJobReport14")
+#define STEP_EQ_STORED_JOB15			_T("EQStoredJobReport15")
 
 
+
+/* Step ID */
+#define STEP_ID_CIMMODE_CHANGED_CMD_REPLY		0x550
+#define STEP_ID_CIM_MSG_SET_CMD_REPLY			0x551
+#define STEP_ID_CIM_MSG_CLEAR_CMD_REPLY			0x552
+#define STEP_ID_DATETIME_SET_CMD_REPLY			0x553
+#define STEP_ID_VCR_ENABLE_CMD_REPLY			0x554
+#define STEP_ID_EQMODE_CHANGE_CMD_REPLY			0x555
+#define STEP_ID_MASTER_RECIPE_LIST_CMD_REPLY	0x556
+#define STEP_ID_RECIPE_PARAMETER_CMD_REPLY		0x557
+#define STEP_ID_EQMODE_CHANGED					0x560
+#define STEP_ID_EQSTATUS_CHANGED				0x561
+#define STEP_ID_EQALARM1						0x562
+#define STEP_ID_EQALARM2						0x563
+#define STEP_ID_EQALARM3						0x564
+#define STEP_ID_EQALARM4						0x565
+#define STEP_ID_EQALARM5						0x566
+#define STEP_ID_PROCESS_DATA_REPORT				0x567
+#define STEP_ID_CURRENT_RECIPE_CHANGE_REPORT	0x568
+#define STEP_ID_CIM_MSG_CONFIRM_REPORT			0x569
+#define STEP_ID_VCR1_EVENT_REPORT				0x56A
+#define STEP_ID_MASTER_RECIPE_LIST_REPORT		0x56B
+#define STEP_ID_RECIPE_PARAMETER_REPORT			0x56C
+#define STEP_ID_RECIVE_JOB_UPS1					0x580
+#define STEP_ID_RECIVE_JOB_UPS2					0x581
+#define STEP_ID_SENT_OUT_JOB_DOWNS1				0x590
+#define STEP_ID_SENT_OUT_JOB_DOWNS2				0x591
+#define STEP_ID_STORE_JOB_REPORT1				0x5A0
+#define STEP_ID_STORE_JOB_REPORT2				0x5A1
+#define STEP_ID_STORE_JOB_REPORT3				0x5A2
+#define STEP_ID_STORE_JOB_REPORT4				0x5A3
+#define STEP_ID_STORE_JOB_REPORT5				0x5A4
+#define STEP_ID_STORE_JOB_REPORT6				0x5A5
+#define STEP_ID_STORE_JOB_REPORT7				0x5A6
+#define STEP_ID_STORE_JOB_REPORT8				0x5A7
+#define STEP_ID_STORE_JOB_REPORT9				0x5A8
+#define STEP_ID_STORE_JOB_REPORT10				0x5A9
+#define STEP_ID_STORE_JOB_REPORT11				0x5AA
+#define STEP_ID_STORE_JOB_REPORT12				0x5AB
+#define STEP_ID_STORE_JOB_REPORT13				0x5AC
+#define STEP_ID_STORE_JOB_REPORT14				0x5AD
+#define STEP_ID_STORE_JOB_REPORT15				0x5AE
+#define STEP_ID_FETCHED_OUT_JOB_REPORT1			0x5AF
+#define STEP_ID_FETCHED_OUT_JOB_REPORT2			0x5B0
+#define STEP_ID_FETCHED_OUT_JOB_REPORT3			0x5B1
+#define STEP_ID_FETCHED_OUT_JOB_REPORT4			0x5B2
+#define STEP_ID_FETCHED_OUT_JOB_REPORT5			0x5B3
+#define STEP_ID_FETCHED_OUT_JOB_REPORT6			0x5B4
+#define STEP_ID_FETCHED_OUT_JOB_REPORT7			0x5B5
+#define STEP_ID_FETCHED_OUT_JOB_REPORT8			0x5B6
+#define STEP_ID_FETCHED_OUT_JOB_REPORT9			0x5B7
+#define STEP_ID_FETCHED_OUT_JOB_REPORT10		0x5B8
+#define STEP_ID_FETCHED_OUT_JOB_REPORT11		0x5B9
+#define STEP_ID_FETCHED_OUT_JOB_REPORT12		0x5BA
+#define STEP_ID_FETCHED_OUT_JOB_REPORT13		0x5BB
+#define STEP_ID_FETCHED_OUT_JOB_REPORT14		0x5BC
+#define STEP_ID_FETCHED_OUT_JOB_REPORT15		0x5BD
+#define STEP_ID_PORT1_TYPE_CHANGE				0x600
+#define STEP_ID_PORT2_TYPE_CHANGE				0x601
+#define STEP_ID_PORT3_TYPE_CHANGE				0x602
+#define STEP_ID_PORT4_TYPE_CHANGE				0x603
+#define STEP_ID_PORT1_MODE_CHANGE				0x608
+#define STEP_ID_PORT2_MODE_CHANGE				0x609
+#define STEP_ID_PORT3_MODE_CHANGE				0x60A
+#define STEP_ID_PORT4_MODE_CHANGE				0x60B
+#define STEP_ID_PORT1_CASSETTE_TYPE_CHANGE		0x610
+#define STEP_ID_PORT2_CASSETTE_TYPE_CHANGE		0x611
+#define STEP_ID_PORT3_CASSETTE_TYPE_CHANGE		0x612
+#define STEP_ID_PORT4_CASSETTE_TYPE_CHANGE		0x613
+#define STEP_ID_PORT1_TRANSFER_MODE_CHANGE		0x618
+#define STEP_ID_PORT2_TRANSFER_MODE_CHANGE		0x619
+#define STEP_ID_PORT3_TRANSFER_MODE_CHANGE		0x61A
+#define STEP_ID_PORT4_TRANSFER_MODE_CHANGE		0x61B
+#define STEP_ID_PORT1_ENABLE_MODE_CHANGE		0x620
+#define STEP_ID_PORT2_ENABLE_MODE_CHANGE		0x621
+#define STEP_ID_PORT3_ENABLE_MODE_CHANGE		0x622
+#define STEP_ID_PORT4_ENABLE_MODE_CHANGE		0x623
+#define STEP_ID_PORT1_TYPE_AUTO_CHANGE			0x628
+#define STEP_ID_PORT2_TYPE_AUTO_CHANGE			0x629
+#define STEP_ID_PORT3_TYPE_AUTO_CHANGE			0x62A
+#define STEP_ID_PORT4_TYPE_AUTO_CHANGE			0x62B
+#define STEP_ID_PORT1_CASSETTIE_EMPTY			0x638
+#define STEP_ID_PORT1_CASSETTIE_LOAD_READY		0x640
+#define STEP_ID_PORT1_CASSETTIE_LOADED			0x648
+#define STEP_ID_PORT1_CASSETTIE_INUSE			0x650
+#define STEP_ID_PORT1_CASSETTIE_UNLOAD_READY	0x658
+#define STEP_ID_PORT1_CASSETTIE_BLOCKED			0x660
+#define STEP_ID_PORT2_CASSETTIE_EMPTY			0x639
+#define STEP_ID_PORT2_CASSETTIE_LOAD_READY		0x641
+#define STEP_ID_PORT2_CASSETTIE_LOADED			0x649
+#define STEP_ID_PORT2_CASSETTIE_INUSE			0x651
+#define STEP_ID_PORT2_CASSETTIE_UNLOAD_READY	0x659
+#define STEP_ID_PORT2_CASSETTIE_BLOCKED			0x661
+#define STEP_ID_PORT3_CASSETTIE_EMPTY			0x63a
+#define STEP_ID_PORT3_CASSETTIE_LOAD_READY		0x642
+#define STEP_ID_PORT3_CASSETTIE_LOADED			0x64a
+#define STEP_ID_PORT3_CASSETTIE_INUSE			0x652
+#define STEP_ID_PORT3_CASSETTIE_UNLOAD_READY	0x65a
+#define STEP_ID_PORT3_CASSETTIE_BLOCKED			0x662
+#define STEP_ID_PORT4_CASSETTIE_EMPTY			0x63b
+#define STEP_ID_PORT4_CASSETTIE_LOAD_READY		0x643
+#define STEP_ID_PORT4_CASSETTIE_LOADED			0x64b
+#define STEP_ID_PORT4_CASSETTIE_INUSE			0x653
+#define STEP_ID_PORT4_CASSETTIE_UNLOAD_READY	0x65b
+#define STEP_ID_PORT4_CASSETTIE_BLOCKED			0x663
+
+
+/* base alarm */
 #define BASE_ALARM_EFEM		10000
 #define BASE_ALARM_BONDER1	20000
 #define BASE_ALARM_BONDER2	30000
@@ -67,3 +312,83 @@
 
 /* 自定义消息 */
 #define ID_MSG_PANEL_RESIZE			WM_USER + 1998
+
+
+/* 流程控制相关代码 */
+#define FLOW_REJECT					0x0
+#define FLOW_ACCEPT					0x1
+#define FLOW_TEST					0x1000
+#define FLOW_SIGNAL					0x1001
+#define FLOW_DATA					0x1002
+#define FLOW_MOVE_MATERIAL			0x1003
+
+
+/* Port Status */
+#define PORT_LOAD_READY				1
+#define PORT_LOADED					2
+#define PORT_INUSE					3
+#define PORT_LOAD_COMPLETE			PORT_INUSE
+#define PORT_UNLOAD_READY			4
+#define PORT_UNLOAD_REQUEST			PORT_RNLOAD_READY
+#define PORT_EMPTY					5
+#define PORT_UNLOAD_COMPLETE		PORT_EMPTY
+#define PORT_BLOCKED				6
+
+
+/* Loading Cassette Type */
+#define PORT_LOADING_CASSETTE_ACTUAL	1
+#define PORT_LOADING_CASSETTE_EMPTY		2
+
+
+/* Q-Time flag */
+#define Q_TIME_NORMAL					1
+#define Q_TIME_OVER						2
+
+
+/* m_nCassetteMappingState */
+#define CASSETTE_MAPPING_USE			1
+#define CASSETTE_MAPPING_NOT_USE		2
+
+
+/* Cassette Status */
+#define CASSETTE_NO_EXIST				1
+#define CASSETTE_WAITING_DATA			2
+#define CASSETTE_WAITING_START			3
+#define CASSETTE_WAITING_PROCCESSING	4
+#define CASSETTE_IN_PROCCESSING			5
+#define CASSETTE_PROCCESS_PAUSED		6
+#define CASSETTE_PROCCESS_COMPLETED		7
+
+
+/*
+	Master Recipe List Return Code Block	Description
+		1	OK : Recipe List Received Result is all ok
+		2	Continue : Equipment still has to send the master recipe list to EAS because EAS is not yet received all master recipe list.
+		3	Master Recipe list Count NG : Total Group Count is same as Current Group Count but it’s different with Total Master Recipe List Count.
+		4	Group Count NG : Total Group Count is different with Current Group Count but it’s same with Total Master Recipe Count.
+		5	Duplication Group Count NG : Current Group Count is duplicate with previous group count.Equipment has to send the next group count to EAS.
+		6	Order by Group Count NG : Group Count is not sent order by next group count to EAS.Group Count has to send by order the next group count
+*/
+#define MRLRC_CURRENT_RECIPE_COMPLETE		0
+#define MRLRC_OK							1
+#define MRLRC_NG							2
+#define MRLRC_CONTINUE						3
+#define MRLRC_MASTER_RECIPE_LIST_COUNT_NG	4
+#define MRLRC_GROUP_COUNT_NG				5
+#define MRLRC_DUPLICATION_GROUP_COUNT_NG	6
+#define ORDER_BY_GROUP_COUNT_NG				7
+
+
+/*
+ Report type
+ 1: Create
+ 2: Modify
+ 3: Delete
+ 4: Request from EAS
+ */
+#define RT_CREATE				1
+#define RT_MODIFY				2
+#define RT_DELETE				3
+#define RT_REQUEST_FROM_EAS		4
+
+

--
Gitblit v1.9.3