private void DoReceiveNOTE_UPLOAD_TRAFFIC_EVENT(System.Xml.XmlNode itemData) { DataModel.TrafficeEventInfoV3_1 info = new DataModel.TrafficeEventInfoV3_1(); System.Xml.XmlNode itemCameraCode = itemData.SelectSingleNode("CameraCode"); info.CameraCode = itemCameraCode.InnerXml; System.Xml.XmlNode itemEventType = itemData.SelectSingleNode("EventType"); info.EventType = (DataModel.E_TRAFFIC_EVENT_TYPE)Convert.ToInt32(itemEventType.InnerXml); System.Xml.XmlNode itemStartTimeSec = itemData.SelectSingleNode("StartTimeSec"); uint StartTimeSec = Convert.ToUInt32(itemStartTimeSec.InnerXml); System.Xml.XmlNode itemStartTimeMilliSec = itemData.SelectSingleNode("StartTimeMilliSec"); uint StartTimeMilliSec = Convert.ToUInt32(itemStartTimeMilliSec.InnerXml); info.StartTime = DataModel.Common.ZEROTIME.AddSeconds(StartTimeSec).AddMilliseconds(StartTimeMilliSec); System.Xml.XmlNode itemEndTimeSec = itemData.SelectSingleNode("EndTimeSec"); uint EndTimeSec = Convert.ToUInt32(itemEndTimeSec.InnerXml); System.Xml.XmlNode itemEndTimeMilliSec = itemData.SelectSingleNode("EndTimeMilliSec"); uint EndTimeMilliSec = Convert.ToUInt32(itemEndTimeMilliSec.InnerXml); info.EndTime = DataModel.Common.ZEROTIME.AddSeconds(EndTimeSec).AddMilliseconds(EndTimeMilliSec); System.Xml.XmlNode itemObjRoadWayNum = itemData.SelectSingleNode("ObjRoadWayNum"); info.ObjRoadWayNum = Convert.ToUInt32(itemObjRoadWayNum.InnerXml); var list = itemData.SelectNodes("DataInfoSet"); info.EventImgInfo = new List <Tuple <System.Drawing.Rectangle, System.IO.MemoryStream> >(); foreach (System.Xml.XmlNode item in list) { int itemEventObjCoordX = Convert.ToInt32(item.SelectSingleNode("EventObjCoordX").InnerXml); int itemEventObjCoordY = Convert.ToInt32(item.SelectSingleNode("EventObjCoordY").InnerXml); int itemEventObjWidth = Convert.ToInt32(item.SelectSingleNode("EventObjWidth").InnerXml); int itemEventObjHeight = Convert.ToInt32(item.SelectSingleNode("EventObjHeight").InnerXml); System.Drawing.Rectangle rect = new System.Drawing.Rectangle(itemEventObjCoordX, itemEventObjCoordY, itemEventObjWidth, itemEventObjHeight); string itemEventImg1Data = item.SelectSingleNode("EventImg1Data").InnerXml; System.IO.MemoryStream stream = new System.IO.MemoryStream(Convert.FromBase64String(itemEventImg1Data)); info.EventImgInfo.Add(new Tuple <System.Drawing.Rectangle, System.IO.MemoryStream>(rect, stream)); } string ComposeImgData = itemData.SelectSingleNode("ComposeImgData").InnerXml; info.ComposeImgData = new System.IO.MemoryStream(Convert.FromBase64String(ComposeImgData)); System.Xml.XmlNode itemEventVideoUrl = itemData.SelectSingleNode("EventVideoUrl"); info.EventVideoUrl = itemEventVideoUrl.InnerXml; System.Xml.XmlNode itemReliability = itemData.SelectSingleNode("Reliability"); info.Reliability = Convert.ToUInt32(itemReliability.InnerXml); System.Xml.XmlNode itemPlateNum = itemData.SelectSingleNode("PlateNum"); info.PlateNum = itemPlateNum.InnerXml; System.Xml.XmlNode itemPlateNumRow = itemData.SelectSingleNode("PlateNumRow"); info.PlateNumRow = (DataModel.E_VDA_SEARCH_VEHICLE_PLATE_STRUCT_TYPE)Convert.ToUInt32(itemPlateNumRow.InnerXml); System.Xml.XmlNode itemPlateColor = itemData.SelectSingleNode("PlateColor"); info.PlateColor = Convert.ToUInt32(itemPlateColor.InnerXml); System.Xml.XmlNode itemVehicleColor = itemData.SelectSingleNode("VehicleColor"); info.VehicleColor = Convert.ToUInt32(itemVehicleColor.InnerXml); System.Xml.XmlNode itemVehicleType = itemData.SelectSingleNode("VehicleType"); info.VehicleType = (DataModel.E_VDA_SEARCH_VEHICLE_TYPE)Convert.ToUInt32(itemVehicleType.InnerXml); System.Xml.XmlNode itemVehicleTypeDetail = itemData.SelectSingleNode("VehicleTypeDetail"); info.VehicleTypeDetail = (DataModel.E_VDA_SEARCH_VEHICLE_DETAIL_TYPE)Convert.ToUInt32(itemVehicleTypeDetail.InnerXml); System.Xml.XmlNode itemVehicleLabel = itemData.SelectSingleNode("VehicleLabel"); info.VehicleLabel = Convert.ToUInt32(itemVehicleLabel.InnerXml); System.Xml.XmlNode itemVehicleLabelDetail = itemData.SelectSingleNode("VehicleLabelDetail"); info.VehicleLabelDetail = Convert.ToUInt32(itemVehicleLabelDetail.InnerXml); System.Xml.XmlNode itemVehicleSpeed = itemData.SelectSingleNode("VehicleSpeed"); info.VehicleSpeed = Convert.ToUInt32(itemVehicleSpeed.InnerXml); System.Xml.XmlNode itemDirection = itemData.SelectSingleNode("Direction"); info.Direction = (DataModel.E_VDA_VEHICLE_DRIVE_DIRECTION_TYPE)Convert.ToUInt32(itemDirection.InnerXml); if (OnTrafficEventReceived != null) { OnTrafficEventReceived(info); } }
void realtimereceive_OnReceiveNOTE_UPLOAD_TRAFFIC_EVENT(Interop.Protocol tcp, Interop.NOTE_UPLOAD_TRAFFIC_EVENT obj) { string msg = string.Format("EventType:{1}," + Environment.NewLine + "StartTime:{2}," + Environment.NewLine + "EndTime:{3}," + Environment.NewLine + "ObjRoadWayNum:{4}," + Environment.NewLine + "EventImgInfo.Count:{5}," + Environment.NewLine + "Reliability:{6}," + Environment.NewLine + "PlateNum:{7}," + Environment.NewLine + "PlateNumRow:{8}," + Environment.NewLine + "PlateColor:{9}," + Environment.NewLine + "VehicleColor:{10}," + Environment.NewLine + "VehicleType:{11}," + Environment.NewLine + "VehicleTypeDetail:{12}," + Environment.NewLine + "VehicleLabel:{13}," + Environment.NewLine + "VehicleLabelDetail:{14}," + Environment.NewLine + "VehicleSpeed:{15}," + Environment.NewLine + "Direction:{16}," + Environment.NewLine , obj.CameraCode , obj.EventType , obj.StartTime , obj.EndTime , obj.ObjRoadWayNum , obj.EventImgInfo.Count , obj.Reliability , obj.PlateNum , obj.PlateNumRow , obj.PlateColor , obj.VehicleColor , obj.VehicleType , obj.VehicleTypeDetail , obj.VehicleLabel , obj.VehicleLabelDetail , obj.VehicleSpeed , obj.Direction ); MyLog4Net.Container.Instance.Log.Debug(msg); DataModel.TrafficeEventInfoV3_1 info = new DataModel.TrafficeEventInfoV3_1() { ComposeImgURL = "", EventId = DateTime.Now.Ticks, EventImgURLInfo = new List <Tuple <System.Drawing.Rectangle, string> >(), CameraCode = obj.CameraCode, ComposeImgData = obj.ComposeImg, Direction = (E_VDA_VEHICLE_DRIVE_DIRECTION_TYPE)obj.Direction, EndTime = obj.EndTime, EventImgInfo = new List <Tuple <System.Drawing.Rectangle, System.IO.MemoryStream> >(), EventType = (E_TRAFFIC_EVENT_TYPE)obj.EventType, EventVideoUrl = obj.EventVideoUrl, ObjRoadWayNum = obj.ObjRoadWayNum, PlateColor = obj.PlateColor, PlateNum = obj.PlateNum, PlateNumRow = (E_VDA_SEARCH_VEHICLE_PLATE_STRUCT_TYPE)obj.PlateNumRow, Reliability = obj.Reliability, StartTime = obj.StartTime, VehicleColor = obj.VehicleColor, VehicleLabel = obj.VehicleLabel, VehicleLabelDetail = obj.VehicleLabelDetail, VehicleSpeed = obj.VehicleSpeed, VehicleType = (E_VDA_SEARCH_VEHICLE_TYPE)obj.VehicleType, VehicleTypeDetail = (E_VDA_SEARCH_VEHICLE_DETAIL_TYPE)obj.VehicleTypeDetail, }; foreach (var item in obj.EventImgInfo) { info.EventImgInfo.Add(new Tuple <System.Drawing.Rectangle, System.IO.MemoryStream>(item.EventObjRect, item.EventImgData)); } if (OnTrafficEventReceived != null) { OnTrafficEventReceived(info); } }