#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; //失败尝试次数 //天进吊舱控制指令至地面站通信接口 CString m_WHTJCmdUDPRemoteIPStr; //远端IP 字符串 CIPAddressCtrl m_WHTJCmdUDPRemoteIP; //远端IP int m_WHTJCmdUDPRemotePort; //远端端口号 int m_WHTJCmdUDPLocalPort; //本地端口号 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; afx_msg void OnBnClickedBtnTjcmdConnect(); };