You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

116 lines
3.6 KiB
C++

#pragma once
#include "MulticastSocket.h"
#include "ExportSimpleImgShow.h"
#include "CUDPSocket.h"
#include "BtnST.h"
#include "EditInput.h"
#include "Serial.h"
#include "afxwin.h"
#include "afxcmn.h"
#include "opencv2/core/core.hpp"
#include "ComControlFunction.h"
// CMulticastSocketReceiveDlg 对话框
class CMulticastSocketReceiveDlg : public CDialogEx
{
DECLARE_DYNAMIC(CMulticastSocketReceiveDlg)
public:
CMulticastSocketReceiveDlg(CWnd* pParent = NULL); // 标准构造函数
virtual ~CMulticastSocketReceiveDlg();
// 对话框数据
enum { IDD = IDD_DLG_MULTICASTSOCKETRECEIVE };
public:
// 显示组播接收信息
CString str_MulticastSocketInfoReceive;
// 设置IR组播端口
UINT m_MulticastSocketPortFH96Data;
// 设置组播IP
CString str_MulticastSocketIP;
CString str_LocalIP_ReceiveMUDP;
CIPAddressCtrl m_IPAddress_MultiCastIP; //组播 //网络IP
// WinSoc
HANDLE m_hThread_GetFH96DataFromNet;
DWORD m_ThreadID_GetFH96DataFromNet;
// 设置位置组播接收
CMulticastSocket m_MulticastSocketLocation; // 组播接收——位置信息
//FJ数据开关
BOOL m_bFJDataShow;
CString m_strServerPayLoadIPSend; //服务器发数IP地址
int m_nServerSendLocalPort; //服务器发数本地端口
int m_nServerSendObjectPort; //服务器发数远端端口
//L测控
CString m_strLLinkMultiCastIP; //L测控组播IP
int m_nLLinkMulticastPort; //L测控组播收数端口
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
DECLARE_MESSAGE_MAP()
public:
virtual BOOL OnInitDialog();
afx_msg void OnBnClickedBtnMultisocketConnect();
void CreateMulticastSocketFH96Data();
void SetUpWinSocketFH96Data();
void ShowMulticastSocketInfoReceive();
void GetHostAddress(CString &strIP);
afx_msg void OnBnClickedBtnMultisocketDisconnect();
void ShowMulticastSocketInfo();
// 显示FJ数据各字节内容
LRESULT ShowCH96FJData(WPARAM wParam, LPARAM lParam);
afx_msg void OnBnClickedCheck1();
virtual BOOL PreTranslateMessage(MSG* pMsg);
// 视频数据源
int m_iVideoSrc;
afx_msg void OnRadioBtnVideoSrcClicked();
//卫通组播
CString m_strSACMulticastIPAddr; //卫通组播IP地址
int m_nSACMulticastRemotePort; //卫通组播收数端口
//卫通UDP单播
CString m_strSACUDPIPAddr; //卫通UDP单播IP地址
int m_nSACUDPRemotePort; //卫通UDP单播远端端口
int m_nSACUDPLocalPort; //卫通UDP单播本地端口
CUDPSocket m_nSACUDPSocket; //卫通UDP通信套接字
void CreateUDPSocketReceiveData(); //卫通UDP数据通信创建
//IMP
CString mComPortIMP; //IMP通信串口号
CString mComBaudIMP; //IMP通信串口波特率
//const int MaxComPortNumber = 1024;
//const unsigned BAUDITEMNUM = 10; //波特率数目
//const unsigned NCOUNTER = 500; //失败尝试次数
private:
//添加系统串口到组合选择框
void AddPortNumberToComboBox();
void SetComboBoxCurSel( int comboBoxID, const int *portArray, const int& arrLength, CString& strPortNumber );
void SetComboBaudCurSel( int comboBoxID, const CString *baudArray, const int& arrLength, CString& strBaudNumber );
bool FindItemFromBaudList( int& pos, const CString *baudArray, const int& arrLength, const int& itemValue );
void AddBaudNumberToComboBox();
void OrderComPortList( int *portArray, const int& arrLength );
public:
afx_msg void OnCbnSelchangePortIMP();//串口号选择触发函数
afx_msg void OnCbnSelchangeBaudIMP();//串口波特率选择触发函数
private:
int m_sysSetComNumber; //串口数
public:
afx_msg void OnBnClickedBtnImpSerialConnect();
afx_msg void OnBnClickedBtnImpSerialDisconnect();
afx_msg void OnBnClickedRadioDc13ins();//吊舱类型选择-13所吊舱
afx_msg void OnBnClickedRadioDcWhtj();//吊舱类型选择-武汉天进吊舱
afx_msg void OnBnClickedRadioH264data();//吊舱类型选择-h264数据
int m_DCvideoTypeSelct;
};