// ***************************************************************************** // ��Ȩ���У�C��2023~2099 �Ϻ����ɳ�������������˾ // ��������Ȩ�� // ***************************************************************************** // ���� : ��� // �汾 : 1.0 // ����˵��: // ������ӿ���,Ϊ�˺�ui ���ֿ����Ժ�Ҳ��Ҫ // ***************************************************************************** #ifndef __CAMERABIND_H__ #define __CAMERABIND_H__ 1 #include <QObject> #include <QPointer> #include "Machine.h" #include "CViewInterface.h" // �ƹ����� enum EN_LIGHT_INDEX { Red,//�� Green, Blue, Point }; struct ST_LIGHT_VAL { int redLightValue; int greenLightValue; int blueLightValue; int pointLightValue; }; //�ƶ��� struct ST_MOVE_AXIS { bool isSwitch; std::string ModuleType; std::string AxisType; double pos; }; // �����ȴ�ʱ�� const unsigned int g_unnSuspensionWaitingTime = 1000 * 60 * 10; //60�� class CameraBind: public QObject { Q_OBJECT public: CameraBind(); ~CameraBind(); /**���û��洰�� */ void SetImageWnd(QWidget* pImageWnd); void InitAllCamera(); /**�ƶ��� */ void SetModuleMove(const std::string& strModuleType, const std::string& enAxisType, double pos, bool bMoveTo); void JModuleMove(std::string ModuleType, std::vector<ns_module::MODULE_COORD_MOVE> vecPos, bool bMoveTo); /**���� */ void JToHome(); /**��ȡXY */ CXYCalib* YGetCalibXY(int iCameraId); /**���õƹ� */ void JSetRedLight(int iCameraId, EN_LIGHT_INDEX nLightIndex, int LightValue); /**��ȡ�ƹ�ֵ */ ST_LIGHT_VAL JGetLight(int iCameraId); /** */ long YGetAxisPosition(std::string ModuleType, std::string AxisType, double& pos); /**ִ�к��� */ long JRunButton(const ns_module::ST_BUTTON_FUN stInfo); //ֹͣ long JRunStop(); //�Զ��̾� long JRunAutoBond(); /**�˳�֪ͨ */ long JViewExit(); /**�ƶ������ */ long JCameraMove(int iCameraId, double x, double y); signals: /**ͨ��ͼ���� * ������Ҫ������ *@pImageBuffer ͼ����BYTE *@nWidth �� *@nHeight �� */ void SendImageDispSignal(int iCameraId, ImageInfo imageData); private: /**����ص��������� 0��1��2��3��4 */ static long OnFrameCallbackFun0(int iCameraId, JVision::ImageInfo imageData); static long OnFrameCallbackFun1(int iCameraId, JVision::ImageInfo imageData); static long OnFrameCallbackFun2(int iCameraId, JVision::ImageInfo imageData); static long OnFrameCallbackFun3(int iCameraId, JVision::ImageInfo imageData); static long OnFrameCallbackFun4(int iCameraId, JVision::ImageInfo imageData); //static long OnFrameCallbackFun2(int iCameraId, ImageInfo imageData); void SendImage(int iCameraId, ImageInfo imageData); public: /**���ͼ��ӿ� */ ns_module::CViewInterface* m_pCViewInterface; /**��ǰ����б� */ std::vector<CameraInfo> m_vecCamera; std::vector<CAxis*> m_vecCAxis; }; #endif //__CAMERABIND_H__