Esempio n. 1
0
 /// <summary>
 /// 新增照片接收实体
 /// </summary>
 /// <param name="picture"></param>
 /// <param name="task"></param>
 /// <param name="fragement"></param>
 private void AddPicReciver(BoShiJiePicture picture, TakePicTask task, GPSPictureFragment fragement)
 {
     if (task.TaskType == SimpleCmdType.NormalSeriateShoot)
     {
     }
     else
     {
         picture = new BoShiJiePicture(task.GPSCode, (byte)fragement.FragementCount, (byte)fragement.CameraID, (byte)fragement.Status);
     }
 }
Esempio n. 2
0
        /// <summary>
        /// 解析图片数据流
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        private GPSPictureFragment DecodePictureStream(byte[] stream)
        {
            //GPSCode            
            byte[] destBuffer = null;
            destBuffer = new byte[4];
            Array.Copy(stream, 5, destBuffer, 0, 4);
            string gpsCode = GetGPSCode(destBuffer);

            int whichFragment = stream[9];
            int fragementCount = stream[12];
            int camerID = stream[10] & 0x0F;
            int status = stream[11];
            byte[] data = new byte[stream.Length - 15];
            Array.Copy(stream, 13, data, 0, stream.Length - 15);

            GPSPictureFragment fragement = new GPSPictureFragment()
            {
                GPSCode = gpsCode,
                CameraID = camerID,
                WhichFragement = whichFragment,
                FragementCount = fragementCount,
                Status = status,
                Data = data
            };

            return fragement;
        }