hspscannerform.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #ifndef HSPSCANNERFORM_H
  2. #define HSPSCANNERFORM_H
  3. #include <opencv2/core/core.hpp>
  4. #include <opencv2/imgproc/imgproc.hpp>
  5. #include <opencv2/highgui/highgui.hpp>
  6. #include <opencv2/imgcodecs/imgcodecs.hpp>
  7. #include <opencv2/core/mat.hpp>
  8. #include <opencv2/core/mat.inl.hpp>
  9. #include <QWidget>
  10. #include <QTimer>
  11. #define ERR_NO_DEVICE -1
  12. #define ERR_NOT_OPENED -2
  13. #define ERR_OPEN_FAIL -3
  14. #define ERR_VIEW_FAIL -4
  15. namespace Ui {
  16. class HSPScannerForm;
  17. }
  18. class HSPScannerForm : public QWidget
  19. {
  20. Q_OBJECT
  21. public:
  22. explicit HSPScannerForm(QWidget *parent = nullptr);
  23. ~HSPScannerForm();
  24. int Open(const char* sID);
  25. int Close();
  26. void SetPos(int iX, int iY, int iW, int iH);
  27. void SetSize(float dA4[4], float dID[4], int iAll[2]);
  28. int Preview(bool b);
  29. int Show(bool b);
  30. int State();
  31. int GetPic(const char* sFile);
  32. bool m_bIsGrey;
  33. int m_iRotate;
  34. int m_iScanSz;
  35. bool m_bIsOpen;
  36. bool m_bIsView;
  37. bool m_bIsHide;
  38. cv::VideoCapture m_cvCamera;
  39. protected:
  40. bool GetVideoID(int iIndex, char* sGet);
  41. int GetCamIndex(const char* sIn);
  42. int CameraState();
  43. private:
  44. Ui::HSPScannerForm *ui;
  45. float m_dA4Pos[4];
  46. float m_dIDPos[4];
  47. int m_iCamAll[2];
  48. cv::Mat m_Capture;
  49. int m_iCamIdx;
  50. QImage Mat2QImage(cv::Mat cvImg);
  51. QTimer * m_ViewTimer;
  52. public slots:
  53. void onCamTimer();
  54. };
  55. #endif // HSPSCANNERFORM_H