Пример #1
0
        public void OnQueryResult(IntPtr session, IntPtr pCommand, IntPtr pEvent)
        {
            BVCU_Command          command    = (BVCU_Command)Marshal.PtrToStructure(pCommand, typeof(BVCU_Command));
            BVCU_Event_SessionCmd sessionCmd = (BVCU_Event_SessionCmd)Marshal.PtrToStructure(pEvent, typeof(BVCU_Event_SessionCmd));

            if (command.stMsgContent.pData == IntPtr.Zero || sessionCmd.stContent.pData == IntPtr.Zero)
            {
                return;
            }
            if (command.iSubMethod == 18)
            {
                Test_Struct        s1      = (Test_Struct)Marshal.PtrToStructure(command.pUserData, typeof(Test_Struct));
                BVCU_PUCFG_GPSData gpsdata = (BVCU_PUCFG_GPSData)Marshal.PtrToStructure(sessionCmd.stContent.pData, typeof(BVCU_PUCFG_GPSData));
            }
            else if (command.iSubMethod == BVSDKAdapter.BVCU_SUBMETHOD.BVCU_SUBMETHOD_SEARCH_LIST)
            {
                BVCU_Search_Response searchResponse = (BVCU_Search_Response)Marshal.PtrToStructure(sessionCmd.stContent.pData, typeof(BVCU_Search_Response));
                if (searchResponse.stSearchInfo.iType == (Int32)BVSDKAdapter.BVCU_SEARCH_TYPE.BVCU_SEARCH_TYPE_FILE)
                {
                    BVCU_SearchInfo  stSearchInfo = searchResponse.stSearchInfo;
                    BVSearchResponse searchRes    = new BVSearchResponse(searchResponse);//读取文件列表
                    m_session.showSearchRecordFiles(searchRes, command.szTargetID);
                }
            }
        }
Пример #2
0
 public void onGpsData(IntPtr dialog, BVCU_PUCFG_GPSData gpsData, Int32 len)
 {
     if (null != m_mainForm && m_mainForm.IsHandleCreated)
     {
         if (null == deleGetGpsData)
         {
             deleGetGpsData = new OnGetGpsData(procGetGpsData);
         }
         m_mainForm.BeginInvoke(deleGetGpsData, new object[] { dialog, gpsData, len });
     }
 }
Пример #3
0
        void GpsDialog_OnData(IntPtr dialog, IntPtr pGpsData, Int32 len)
        {
            if (IntPtr.Zero == pGpsData)
            {
                return;
            }

            BVCU_PUCFG_GPSData gpsData = (BVCU_PUCFG_GPSData)Marshal.PtrToStructure(pGpsData, typeof(BVCU_PUCFG_GPSData));

            m_dialog.onGpsData(dialog, gpsData, len);
        }
Пример #4
0
 void procGetGpsData(IntPtr dialog, BVCU_PUCFG_GPSData gpsData, int len)
 {
     foreach (OneDialog dlg in m_gpsDialogs)
     {
         if (dlg.dialogHandle == dialog)
         {
             if (null != m_mainForm)
             {
                 m_mainForm.onGetGpsData(dlg.pu.id, gpsData, len);
             }
             return;
         }
     }
 }
Пример #5
0
 /// <summary>
 /// 获得Gps数据
 /// </summary>
 public void onGetGpsData(string puId, BVCU_PUCFG_GPSData gpsData, Int32 len)
 {
     foreach (ListViewItem item in listViewGPSData.Items)
     {
         if (item.Text.Equals(puId, StringComparison.CurrentCultureIgnoreCase))
         {
             float lat = 0;
             float lng = 0;
             ListViewItem.ListViewSubItem latItem = new ListViewItem.ListViewSubItem();
             lat              = (float)gpsData.iLatitude / BVCU.BVCU_LAT_LNG_UNIT;
             lng              = (float)gpsData.iLongitude / BVCU.BVCU_LAT_LNG_UNIT;
             latItem.Text     = lat.ToString("0.00000");
             item.SubItems[1] = latItem;
             ListViewItem.ListViewSubItem lngItem = new ListViewItem.ListViewSubItem();
             lngItem.Text     = lng.ToString("0.00000");
             item.SubItems[2] = lngItem;
             LogHelper.LogHelper.RecordLog(8, string.Format("({0}, {1})", lat.ToString("0.00000"), lng.ToString("0.00000")));
             return;
         }
     }
 }