JonYang 2 일 전
부모
커밋
7a72442948

BIN
Output/bin/x64/Control.dll


BIN
Output/bin/x64/Control.pdb


BIN
Output/bin/x64/Module.dll


BIN
Output/bin/x64/Module.pdb


BIN
Output/bin/x64/configurations.db


BIN
Output/dll/x64/Control.dll


BIN
Output/dll/x64/Module.dll


+ 3 - 1
Output/inc/Control/CViewInterface.h

@@ -93,7 +93,9 @@ namespace ns_module
 		//数据更改后发送通知
 		long DataChangNotice(string strDbName,string strTableName);
 		//接收数据更改后的通知
-		void RecvDataChangNotice(string strDbName, string strTableName, DataNoticeCallbackFun callBackFun);
+		HANDLE RecvDataChangNotice(string strDbName, string strTableName, DataNoticeCallbackFun callBackFun);
+		//停止接收数据更改通知
+		void StopRecvDataChangNotice(HANDLE hStopEvent);
 
 		//停止
 		long RunStop();

+ 3 - 1
Output/inc/Module/CDataBaseOperate.h

@@ -65,7 +65,9 @@ namespace ns_db
         //数据更改后发布通知
         LONG DataChangNotice(string strTableName);
         //接收数据更改后的通知
-        void RecvDataChangNotice(string strTableName, DataNoticeCallbackFun callBackFun);
+        HANDLE RecvDataChangNotice(string strTableName, DataNoticeCallbackFun callBackFun);
+        //停止接收数据更改通知
+        static void StopRecvDataChangNotice(HANDLE hStopEvent);
     };
 
 }

+ 20 - 16
Output/inc/Module/CProduct.h

@@ -127,14 +127,14 @@ namespace ns_db
 
 	typedef struct _PROGRAM_DIE_MATRIX_STRUCT : TABLE_INFO_BASE
 	{
-		UINT iModuleId;							//模组Id
-		string strModuleName;					//模组名称
-		UINT MatrixId;							//矩阵ID
-		INT MatrixRow;							//矩阵行数
-		INT MatrixCol;							//矩阵列数
-		XY_DOUBLE_STRUCT LeftTopPoint;			//矩阵左上角点位置(相对位置)
-		XY_DOUBLE_STRUCT RightTopPoint;			//矩阵右上角点位置(相对位置)
-		XY_DOUBLE_STRUCT RightBottomPoint;		//矩阵右下角点位置(相对位置)
+		UINT iModuleId = 1;							//模组Id
+		string strModuleName = "WaffleHead";				//模组名称
+		UINT MatrixId = 0;							//矩阵ID
+		INT MatrixRow = 1;							//矩阵行数
+		INT MatrixCol = 1;							//矩阵列数
+		XY_DOUBLE_STRUCT LeftTopPoint = { 0,0 };			//矩阵左上角点位置(相对位置)
+		XY_DOUBLE_STRUCT RightTopPoint = { 0,0 };			//矩阵右上角点位置(相对位置)
+		XY_DOUBLE_STRUCT RightBottomPoint = { 0,0 };	//矩阵右下角点位置(相对位置)
 		vector<XY_LONG_STRUCT> VecNoBondPt;		//矩阵上不固晶的Pt列表 (1,2)表示第一行第二列不固晶
 	}PROGRAM_DIE_MATRIX_STRUCT;					//晶片矩阵包括华夫盒和晶圆台
 
@@ -153,11 +153,11 @@ namespace ns_db
 	typedef struct _PROGRAM_WAFFLE_MATRIX_STRUCT : TABLE_INFO_BASE
 	{
 		UINT MatrixId;								//矩阵ID
-		INT PackRow;								//华夫盒行数
-		INT PackCol;								//华夫盒列数
-		XY_DOUBLE_STRUCT LeftTopPoint;				//矩阵左上角点位置(绝对位置)
-		XY_DOUBLE_STRUCT RightTopPoint;				//矩阵右上角点位置(绝对位置)
-		XY_DOUBLE_STRUCT RightBottomPoint;			//矩阵右下角点位置(绝对位置)
+		INT PackRow = 1;								//华夫盒行数
+		INT PackCol = 1;								//华夫盒列数
+		XY_DOUBLE_STRUCT LeftTopPoint = { 0,0 };				//矩阵左上角点位置(绝对位置)
+		XY_DOUBLE_STRUCT RightTopPoint = { 0,0 };				//矩阵右上角点位置(绝对位置)
+		XY_DOUBLE_STRUCT RightBottomPoint = { 0,0 };			//矩阵右下角点位置(绝对位置)
 		vector<INT> VecDieMatrixId;					//包含的Pt矩阵Id
 		vector<XY_LONG_STRUCT> VecNoBondDie;		//矩阵上不固晶的Pcb列表 (1,2)表示第一行第二列不固晶
 	}PROGRAM_WAFFLE_MATRIX_STRUCT;	//华夫盒矩阵
@@ -296,6 +296,9 @@ namespace ns_db
 		LONG GetDieMatrix(UINT nModuleId, std::vector<PROGRAM_DIE_MATRIX_STRUCT>& vecDieMatrix);
 		LONG GetDieMatrix(UINT iMatrixId, PROGRAM_DIE_MATRIX_STRUCT& stDieMatrix);
 		LONG SetDieMatrix(std::vector<PROGRAM_DIE_MATRIX_STRUCT> stDieMatrix, bool bAppend = false);
+		LONG SetAllDieMatrix(std::vector<PROGRAM_DIE_MATRIX_STRUCT> vecDieMatrix);
+		LONG SetAllWaffleDieMatrix(std::vector<PROGRAM_DIE_MATRIX_STRUCT> vecDieMatrix);
+		LONG SetAllWaferDieMatrix(std::vector<PROGRAM_DIE_MATRIX_STRUCT> vecDieMatrix);
 		LONG DeleteDieMatrix(int matrixId);
 
 
@@ -310,6 +313,7 @@ namespace ns_db
 	public:
 		std::vector<PROGRAM_WAFER_MATRIX_STRUCT> GetWaferMatrix() { return m_VecWaferMatrix; };
 		LONG SetWaferMatrix(UINT id, PROGRAM_WAFER_MATRIX_STRUCT matrix);
+		LONG SetAllWaferMatrix(std::vector<PROGRAM_WAFER_MATRIX_STRUCT> vecWaferMatrix);
 		LONG AddWaferMatrix(PROGRAM_WAFER_MATRIX_STRUCT newMatrix, int& newId);
 		LONG DeleteWaferMatrix(int matrixID);
 
@@ -324,6 +328,7 @@ namespace ns_db
 	public:
 		std::vector<PROGRAM_WAFFLE_MATRIX_STRUCT> GetWaffleMatrix() { return m_VecWaffleMatrix; };
 		LONG SetWaffleMatrix(int id, PROGRAM_WAFFLE_MATRIX_STRUCT matrix);
+		LONG SetAllWaffleMatrix(std::vector<PROGRAM_WAFFLE_MATRIX_STRUCT> vecWaffleMatrix);
 		LONG AddWaffleMatrix(PROGRAM_WAFFLE_MATRIX_STRUCT newMatrix, int& newId);
 		LONG DeleteWaffleMatrix(int matrixID);
 
@@ -338,6 +343,7 @@ namespace ns_db
 	public:
 		std::vector<PROGRAM_BOND_MATRIX_STRUCT> GetBondMatrix() { return m_VecBondMatrix; };
 		void SetBondMatrix(int matrixID, PROGRAM_BOND_MATRIX_STRUCT matrix);
+		LONG SetAllBondMatrix(std::vector<PROGRAM_BOND_MATRIX_STRUCT> vecBondMatrix);
 		LONG AddBondMatrix(PROGRAM_BOND_MATRIX_STRUCT matrix, int& newId);
 		void DeleteBondMatrix(int matrixID);
 
@@ -351,9 +357,9 @@ namespace ns_db
 		LONG SavePointMatrix();
 	public:
 		LONG GetPointMatrix(UINT iMatrixId, PROGRAM_POINT_MATRIX_STRUCT& stPointMatrix);
-
 		LONG AddPointMatrix(int bondMatrixID, PROGRAM_POINT_MATRIX_STRUCT subMatrix,int& newId);
 		LONG SetPointMatrix(int matrixID, PROGRAM_POINT_MATRIX_STRUCT dieMatrix);
+		LONG SetAllPointMatrix(std::vector<PROGRAM_POINT_MATRIX_STRUCT> vecPointMatrix);
 		LONG DeletePointMatrix(int bondMatrixId, int subMatrixID);
 
 #pragma endregion
@@ -366,7 +372,6 @@ namespace ns_db
 		LONG SaveBondInfoData();
 	public:
 		LONG GetBondInfoData(UINT iInfoId, BOND_INFO_STRUCT& stBondInfoData);
-
 		LONG SetBondInfoData(int infoId, BOND_INFO_STRUCT stBondInfoData);
 		LONG AddBondInfoData(BOND_INFO_STRUCT stBondInfoData,int& newInfoId);//需要指定矩阵ID
 		LONG DeleteBondInfoData(int infoId);
@@ -383,7 +388,6 @@ namespace ns_db
 	public:
 		LONG GetBondParam(UINT iParamId, PICKBOND_PARAM_STRUCT& stBondParam);
 		LONG SetBondParam(int paramId, PICKBOND_PARAM_STRUCT stBondParam);
-
 		LONG AddBondParam(PICKBOND_PARAM_STRUCT stBondParam,int& newId);//需要指定bondInfo 的id,将数据进行
 		LONG DeleteBondParam(int paramId);
 

+ 1 - 1
Output/inc/Module/OneDimMatrix.h

@@ -25,7 +25,7 @@ namespace ns_mat
 		LONG GetPointPosition(int index, XY_DOUBLE_STRUCT& position);
 		LONG GetPointPosition(int row, int col, XY_DOUBLE_STRUCT& pointInfo);
 		int GetAmount() { return m_nAmount; };//»ñÈ¡×ÜÊý
-
+		std::map<int, MatrixPointInfo> GetMatrixInfo() {return m_mapMatrixInfo;}
 
 	private:
 		void Sort_Z();

+ 2 - 1
Output/inc/Module/TipMatrix.h

@@ -11,7 +11,7 @@ namespace ns_mat
 	};
 
 
-	class TipMatrix
+	class __declspec(dllexport) TipMatrix
 	{
 	public:
 		static TipMatrix* GetInstance();
@@ -19,6 +19,7 @@ namespace ns_mat
 		LONG LoadMatrixParam();
 
 		LONG GetNozzlePosition(int index, XY_DOUBLE_STRUCT& position);
+		std::map<int, MatrixPointInfo> GetNozzleInfo();
 
 		LONG GetBHRCalibTempID(int nozzleIndex, int& tempID);
 		LONG SetBHRCalibTempID(int nozzleIndex, int tempID);

BIN
Output/lib/x64/Common.lib


BIN
Output/lib/x64/Control.lib


BIN
Output/lib/x64/Module.lib