|
|
#pragma once
|
|
|
|
|
|
|
|
|
// 输出双击图像时的脱靶量
|
|
|
// flag = 0: 脱靶量
|
|
|
// flag = 1: 对话框坐标
|
|
|
typedef void (CALLBACK* SendPixXYOffsetProc)(CPoint xy, int flag);
|
|
|
|
|
|
// 输出双击点与对话框中点的夹角
|
|
|
typedef void (CALLBACK* SendAngleProc)(double angle);
|
|
|
|
|
|
// 当鼠标按下时,输出鼠标点与对话框中心点的距离比例系数和角度
|
|
|
typedef void (CALLBACK* SendDistRatioAndAngleProc)(double distRatio, double angle);
|
|
|
|
|
|
// 通知简单图像显示对话框被左键双击
|
|
|
typedef void (CALLBACK* SendLButtonDblClkInfoProc)();
|
|
|
|
|
|
// 通知简单图像显示对话框被右键按下 1:Ctrl
|
|
|
typedef void (CALLBACK* SendButtonDownInfoProc)(int type);
|
|
|
|
|
|
|
|
|
// 声明 图像显示对话框类
|
|
|
class CSimpleImgShowDlg;
|
|
|
|
|
|
class AFX_CLASS_EXPORT CExportSimpleImgShow: public CObject
|
|
|
{
|
|
|
public:
|
|
|
CExportSimpleImgShow(void);
|
|
|
~CExportSimpleImgShow(void);
|
|
|
public:
|
|
|
|
|
|
/************************************************************************/
|
|
|
/* part 1:窗口创建、销毁、图像显示、标注等 */
|
|
|
/************************************************************************/
|
|
|
|
|
|
// 1 功能:创建视频显示窗口
|
|
|
// 输入:
|
|
|
// 1. hParentWnd: 父窗口句柄
|
|
|
//
|
|
|
// 输出:创建成功返回TRUE,否则返回FALSE
|
|
|
BOOL CreateWnd(const HWND hParentWnd);
|
|
|
|
|
|
|
|
|
// 2 功能:移动(设置)窗口(整个视频显示窗口)至指定位置
|
|
|
// 输入:
|
|
|
// 1. clientRect:移动至该区域
|
|
|
//
|
|
|
// 输出:无
|
|
|
void MoveWnd(const CRect &clientRect);
|
|
|
|
|
|
|
|
|
// 3 功能:显示SW_SHOW 或隐藏 SW_HIDE 窗口
|
|
|
// 输入:
|
|
|
// 1. nCmdShow:SW_SHOW 或 SW_HIDE
|
|
|
//
|
|
|
// 输出:无
|
|
|
void ShowWnd(const int nCmdShow);
|
|
|
|
|
|
|
|
|
// 4 功能:显示一帧图像
|
|
|
// 输入:
|
|
|
// 1. pImgInfo:图像信息头
|
|
|
// 2. pImgData:图像数据指针
|
|
|
//
|
|
|
// 输出:显示成功返回TRUE,否则返回FALSE
|
|
|
BOOL ShowImage(const BITMAPINFO* pImgInfo, BYTE* pImgData);
|
|
|
|
|
|
|
|
|
// 5 功能:删除视频显示窗口,同时释放所有占用资源
|
|
|
// 输入:无
|
|
|
//
|
|
|
// 输出:无
|
|
|
void DestroyWnd();
|
|
|
|
|
|
// 6 功能:设置回调函数
|
|
|
// 输入:
|
|
|
// 1. fun 函数指针
|
|
|
//
|
|
|
// 输出:无
|
|
|
void SetCallBackFun(SendPixXYOffsetProc fun);
|
|
|
|
|
|
// 7 功能:设置回调函数
|
|
|
// 输入:
|
|
|
// 1. fun 函数指针
|
|
|
//
|
|
|
// 输出:无
|
|
|
void SetCallBackFun(SendAngleProc fun);
|
|
|
|
|
|
// 8 功能:设置回调函数
|
|
|
// 输入:
|
|
|
// 1. fun 函数指针
|
|
|
//
|
|
|
// 输出:无
|
|
|
void SetCallBackFun(SendDistRatioAndAngleProc fun);
|
|
|
|
|
|
// 9 功能:设置回调函数
|
|
|
// 输入:
|
|
|
// 1. fun 函数指针
|
|
|
//
|
|
|
// 输出:无
|
|
|
void SetCallBackFun(SendLButtonDblClkInfoProc fun);
|
|
|
|
|
|
|
|
|
// 10 功能:设置是否显著标记对话框
|
|
|
// 输入:
|
|
|
// 1. bMark: 是否标记
|
|
|
// 2. bEnhance: 增强该功能
|
|
|
//
|
|
|
// 输出:无
|
|
|
void MarkDialog(bool bMark, bool bEnhance = false);
|
|
|
|
|
|
// 11 功能:设置回调函数
|
|
|
// 输入:
|
|
|
// 1. fun 函数指针
|
|
|
//
|
|
|
// 输出:无
|
|
|
void SetCallBackFun(SendButtonDownInfoProc fun);
|
|
|
|
|
|
// 12 功能:获取当前显示图像
|
|
|
// 输入:
|
|
|
// 无
|
|
|
// 输出:
|
|
|
// 1:imgWidth 图像宽
|
|
|
// 2:imgHeight 图像高
|
|
|
// 3:bitCount 图像位数
|
|
|
// 4:pImgData 图像数据指针
|
|
|
// 返回值:
|
|
|
// 成功返回true,失败返回false
|
|
|
bool GetCurrentImg(int &imgWidth, int &imgHeight, int& bitCount, unsigned char* &pImgData);
|
|
|
|
|
|
// 13 功能:设置空屏文字
|
|
|
// 输入:
|
|
|
// 1. str 主题文字
|
|
|
// 输出:
|
|
|
// 无
|
|
|
// 返回值:
|
|
|
// 无
|
|
|
void SetThemeText(CString str);
|
|
|
|
|
|
|
|
|
// 13 功能:关闭右键菜单
|
|
|
void CloseRightBtnDownMenu(bool bClose = true);
|
|
|
|
|
|
|
|
|
// 14 功能:清空显示
|
|
|
void ClearImg();
|
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
CSimpleImgShowDlg* m_ShowDlg; // MFC 对话框
|
|
|
};
|
|
|
|