193 lines
4.2 KiB
C++
193 lines
4.2 KiB
C++
// WcsMainDialog.cpp : 实现文件
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "afxdialogex.h"
|
|
|
|
#include "Fast.h"
|
|
#include "FastMainDialog.h"
|
|
|
|
|
|
|
|
// CMainDialog 对话框
|
|
|
|
IMPLEMENT_DYNAMIC(CFastMainDialog, CDialogEx)
|
|
|
|
CFastMainDialog::CFastMainDialog(CWnd* pParent /*=NULL*/)
|
|
: CDialogEx(IDD_FAST_MAIN_DIALOG, pParent)
|
|
{
|
|
}
|
|
|
|
CFastMainDialog::~CFastMainDialog()
|
|
{
|
|
|
|
}
|
|
|
|
void CFastMainDialog::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialogEx::DoDataExchange(pDX);
|
|
DDX_Control(pDX, IDC_STATIC_FAST1, m_FastCam[0]);
|
|
DDX_Control(pDX, IDC_STATIC_FAST2, m_FastCam[1]);
|
|
DDX_Control(pDX, IDC_STATIC_FAST3, m_FastCam[2]);
|
|
DDX_Control(pDX, IDC_STATIC_FAST4, m_FastCam[3]);
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CFastMainDialog, CDialogEx)
|
|
|
|
ON_WM_TIMER()
|
|
END_MESSAGE_MAP()
|
|
|
|
|
|
// CMainDialog 消息处理程序
|
|
|
|
//和模块进程通讯的管道回调函数:
|
|
void g_PipeCallBack(void* pObj, int lMsgId, WPARAM wparam, LPARAM lparam)
|
|
{
|
|
CFastMainDialog* pModule = (CFastMainDialog*)pObj;
|
|
if (CEXPIPE_CONNECT_OK == lMsgId)
|
|
{
|
|
//连接成功
|
|
//if (FALSE == pModule->PostMessage(WM_PLATFORM_CONNECT_OK, NULL, NULL)) { LogOutToFile("g_PipeCallBack PostMessage error[%d]", lMsgId); }
|
|
LogOutToFile("已连接父进程管道");
|
|
|
|
//向WMS服务器请求设备配置信息
|
|
theApp.SendMsg2Platform("WMS", DEVICE_CONFIG_REQ, NULL);
|
|
}
|
|
else if (CEXPIPE_DIS_CLIENT == lMsgId)
|
|
{
|
|
//管道断开,结束
|
|
#ifndef _DEBUG
|
|
LogOutToFile("父进程连接管道断开,本模块自动退出");
|
|
//if (FALSE == pModule->PostMessage(WM_CLOSE, NULL, NULL)) { LogOutToFile("g_PipeCallBack PostMessage error[%d]", lMsgId); }
|
|
pModule->PostMessage(WM_COMMAND, MAKEWPARAM(ID_TRAY_EXIT, 0), 0);
|
|
#endif
|
|
}
|
|
else if (CEXPIPE_NEW_DATA == lMsgId)
|
|
{
|
|
pModule->ProcessPipeMsg(lMsgId, (char*)wparam, (int)lparam);
|
|
}
|
|
else
|
|
{
|
|
;
|
|
}
|
|
}
|
|
|
|
|
|
void CFastMainDialog::ProcessPipeMsg(int lMsgId, char* pData, int lLen)
|
|
{
|
|
if (lLen == 0)
|
|
{
|
|
return;
|
|
}
|
|
|
|
PIPE_DATA_STRUCT* pstData = (PIPE_DATA_STRUCT*)pData;
|
|
|
|
//平台转发给插件的消息
|
|
if (pstData->lMsgId == MAIN_2_MODULE_WMS && pstData->lDataLen > 0)
|
|
{
|
|
Json::Reader reader;
|
|
Json::Value root;
|
|
if (reader.parse((char*)pstData->acData, root))
|
|
{
|
|
CString strReceiver = root["receiver"].asString().c_str();
|
|
CString strSender = root["sender"].asString().c_str();
|
|
int nMsgType = root["type"].asInt();
|
|
|
|
|
|
//获取设备配置信息返回
|
|
/*if (nMsgType == DEVICE_CONFIG_RET)
|
|
{
|
|
|
|
}
|
|
else if (nMsgType == SET_TRANS_MODE_REQ && m_bDeviceInit) //设置输送线的工作模式
|
|
{
|
|
|
|
}
|
|
else if (nMsgType == GET_TRANS_STATE_REQ)//请求获取输送线状态
|
|
{
|
|
|
|
}*/
|
|
|
|
}
|
|
}
|
|
else if (pstData->lMsgId == MAIN_2_MODULE_SHOWWINDOW)
|
|
{
|
|
//PostMessage(WM_COMMAND, MAKEWPARAM(ID_TRAY_SHOW, 0), 0);
|
|
AfxGetApp()->m_pMainWnd->ShowWindow(SW_SHOWNORMAL);
|
|
SetForegroundWindow();
|
|
}
|
|
|
|
LogOutToFile("HttpServiceListener::OnRecvRequest End");
|
|
}
|
|
|
|
|
|
BOOL CFastMainDialog::OnInitDialog()
|
|
{
|
|
CDialogEx::OnInitDialog();
|
|
|
|
theApp.m_hMainWnd = m_hWnd;
|
|
//SetTimer(1, 500, NULL);
|
|
|
|
//初始化本地相机
|
|
InitLocalCamera();
|
|
|
|
return TRUE; // return TRUE unless you set the focus to a control
|
|
// 异常: OCX 属性页应返回 FALSE
|
|
}
|
|
|
|
|
|
|
|
|
|
BOOL CFastMainDialog::PreTranslateMessage(MSG* pMsg)
|
|
{
|
|
if (pMsg->message == WM_KEYDOWN&&pMsg->wParam == VK_RETURN)
|
|
return TRUE;
|
|
if (pMsg->message == WM_KEYDOWN&&pMsg->wParam == VK_ESCAPE)
|
|
return TRUE;
|
|
|
|
return CDialog::PreTranslateMessage(pMsg);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void CFastMainDialog::OnTimer(UINT_PTR nIDEvent)
|
|
{
|
|
// TODO: 在此添加消息处理程序代码和/或调用默认值
|
|
CDialogEx::OnTimer(nIDEvent);
|
|
}
|
|
|
|
void CFastMainDialog::InitLocalCamera()
|
|
{
|
|
m_FastCam[0].SetCameraInfo(0, HIK_RGBD, SNAP_PICTURE);
|
|
m_FastCam[1].SetCameraInfo(1, DAHUA_FISHEYE, SNAP_PICTURE, "192.168.0.124", 37777);
|
|
m_FastCam[2].SetCameraInfo(2, DAHUA_FISHEYE, RT_STREAMING, "192.168.0.124", 37777);
|
|
}
|
|
|
|
/*
|
|
void CFastMainDialog::InitCamereSDK()
|
|
{
|
|
MV3D_RGBD_VERSION_INFO stVersion;
|
|
MV3D_RGBD_GetSDKVersion(&stVersion);
|
|
MV3D_RGBD_Initialize();
|
|
int ret = MV3D_RGBD_Initialize();
|
|
|
|
unsigned int nDevNum = 0;
|
|
ret = MV3D_RGBD_GetDeviceNumber(DeviceType_USB, &nDevNum);
|
|
|
|
if (0 == nDevNum)
|
|
{
|
|
//AfxMessageBox("未检测到相机,请检查相机连接是否正常.");
|
|
return ;
|
|
}
|
|
|
|
MV3D_RGBD_DEVICE_INFO info;
|
|
for (int i = 0; i < nDevNum; i++)
|
|
{
|
|
m_CameraDev.push_back(info);
|
|
}
|
|
ret = MV3D_RGBD_GetDeviceList(DeviceType_USB, &m_CameraDev[0], nDevNum, &nDevNum);
|
|
}
|
|
*/ |