#pragma once #include "BaseCamera.h" class CFastView; class CHikRgdbCamera : public CBaseCamera { DECLARE_DYNAMIC(CHikRgdbCamera) public: CHikRgdbCamera(CFastView *, int nIdx, CWnd* pParent = NULL); // 标准构造函数 virtual ~CHikRgdbCamera(); // 对话框数据 #ifdef AFX_DESIGN_TIME enum { IDD = IDD_DLG_CAM}; #endif protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 DECLARE_MESSAGE_MAP() public: CFastView *m_pParentWnd; void* m_hCameraHandle; virtual BOOL OnInitDialog(); afx_msg void OnDestroy(); afx_msg LRESULT OnSnap(WPARAM wParam, LPARAM lParam); afx_msg void OnTimer(UINT_PTR nIDEvent); BOOL InitCameraSDK(); short GetPointDepth(unsigned char * pSrcData, int x, int y); short GeRectDepth(unsigned char * pSrcData, cv::Point2f lt, cv::Point2f rb); void TargetDetection(int nCameraIdx, cv::Mat &mat_img, vector &findRects); void TargetPosition(unsigned char* pDepthData, vector &findRects, cv::Point3f& coordinate, CRect& rect); public: int m_nCameraIdx; };