#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 }; }