123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- #pragma once
- #define C_MACHINE_EXPORTS
- #include "Machine.h"
- namespace ns_module
- {
- class __declspec(dllexport) CViewInterface
- {
- private:
- static CViewInterface* m_instance;
- bool m_bIsInitSuccess = false;
- CManageDB* m_pCManageDB = nullptr;
- Machine* m_pMachine = nullptr;
- CCameraManage* m_pCameraManage = nullptr;
- CResources* m_pResource = nullptr;
- LONG Init();
- public:
- static CViewInterface* GetInstance();
- #pragma region 界面方面接口
- private:
- CXYCalib* GetCalibXY(int iCameraId);
- public:
- /// <summary>
- /// 设置红光
- /// </summary>
- /// <param name="iCameraId">相机Id</param>
- /// <param name="LightValue">灯光值</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long SetRedLight(int iCameraId, int LightValue);
- /// <summary>
- /// 设置绿光
- /// </summary>
- /// <param name="LightValue">灯光值</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long SetGreenLight(int iCameraId, int LightValue);
- /// <summary>
- /// 设置蓝光
- /// </summary>
- /// <param name="iCameraId">相机Id</param>
- /// <param name="LightValue">灯光值</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long SetBlueLight(int iCameraId, int LightValue);
- /// <summary>
- /// 设置点光
- /// </summary>
- /// <param name="iCameraId">相机Id</param>
- /// <param name="LightValue">灯光值</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long SetPointLight(int iCameraId, int LightValue);
- /// <summary>
- /// 获取灯光值
- /// </summary>
- /// <param name="iCameraId">相机Id</param>
- /// <param name="redLightValue">红光。值为-1时,表示没有该灯</param>
- /// <param name="greenLightValue">绿光。值为-1时,表示没有该灯</param>
- /// <param name="blueLightValue">蓝光。值为-1时,表示没有该灯</param>
- /// <param name="pointLightValue">点光。值为-1时,表示没有该灯</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long GetLight(int iCameraId, int& redLightValue, int& greenLightValue, int& blueLightValue, int& pointLightValue);
- /// <summary>
- /// 获取相机图像。调用后会阻塞,直到有新的相机图像时才返回
- /// </summary>
- /// <param name="iCameraId">相机Id</param>
- /// <param name="image"></param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long GrabImage(int iCameraId, ImageInfo& image);
- /// <summary>
- /// 获取CPK数据信息
- /// </summary>
- /// <param name="CpkList">CPK数据</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long GetCpkList(std::vector<CPK_LIST_STRUCT>& CpkList);
- /// <summary>
- /// 读取表中指定GroupId的配置信息
- /// </summary>
- /// <param name="iGroupId">组Id</param>
- /// <param name="strTableName">表名</param>
- /// <param name="vecConfig">返回的配置信息</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long LoadConfigDB(string strTableName, vector<int> iGroupId, vector<CONFIG_BASE_STRUCT>& vecConfig);
- /// <summary>
- /// 保存配置信息
- /// </summary>
- /// <param name="strTableName">表名</param>
- /// <param name="vecConfig">要保存的配置信息</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long SaveConfigDB(string strTableName, vector<CONFIG_BASE_STRUCT> vecConfig);
- /// <summary>
- /// 获取相机列表
- /// </summary>
- /// <param name="vecCamera">相机列表</param>
- /// <returns>成功返回0,否则返回错误码</returns>
- long GetCameraList(vector<CameraInfo>& vecCamera);
- /// <summary>
- /// 相机移动到显示位置
- /// </summary>
- /// <param name="iCameraId"></param>
- /// <param name="x"></param>
- /// <param name="y"></param>
- /// <returns></returns>
- long CameraMove(int iCameraId, double x, double y);
- long SetVideoCallBackFunc(int iCameraId, CallVideoBack func);
- //获取所有轴信息
- vector<CAxis*> GetAxisList();
- //移动轴
- long ModuleMove(string ModuleType, string AxisType, double pos);
- long ModuleMoveTo(string ModuleType, string AxisType, double pos);
- //数据更改后发送通知
- LONG DataChangNotice(string strDbName,string strTableName);
- //接收数据更改后的通知
- void RecvDataChangNotice(string strDbName, string strTableName, DataNoticeCallbackFun callBackFun);
-
- #pragma endregion
- };
- }
|