private void onStatus(TrackingStatusEnum statusEnum, string statusData) { switch (statusEnum) { case TrackingStatusEnum.Error: updateWorkStatus(statusData); break; case TrackingStatusEnum.Warn: updateWorkStatus(statusData); break; case TrackingStatusEnum.Rect: updateTrackRect(statusData); break; case TrackingStatusEnum.AutoZoom: IsAutoZoom = bool.Parse(statusData); break; case TrackingStatusEnum.ZoomAndStatus: updateZoomAndStatus(statusData); break; case TrackingStatusEnum.Info: Console.WriteLine("{0}: Info {1}", DateTime.Now.TimeOfDay, statusData); updateWorkStatus(statusData); break; case TrackingStatusEnum.Status: updateTrackingStatus(statusData); break; case TrackingStatusEnum.Debug: break; case TrackingStatusEnum.None: updateWorkStatus(statusData); break; case TrackingStatusEnum.Other: Console.WriteLine(DateTime.Now + ": " + statusData); break; } }
private void onStatus(string statusInfo) { char[] separator = new char[] { '#' }; string[] strList = statusInfo.Split(separator); TrackingStatusEnum statusEnum = TrackingStatusEnum.None; string info = statusInfo; if (strList.Length >= 2) { if (strList.Length >= 3) { info = strList[2]; } switch (strList[1].ToLower()) { case "error": statusEnum = TrackingStatusEnum.Error; break; case "warn": statusEnum = TrackingStatusEnum.Warn; break; case "rect": statusEnum = TrackingStatusEnum.Rect; break; case "autozoom": statusEnum = TrackingStatusEnum.AutoZoom; break; case "zoominfo": statusEnum = TrackingStatusEnum.ZoomAndStatus; break; case "info": statusEnum = TrackingStatusEnum.Info; break; case "status": statusEnum = TrackingStatusEnum.Status; info = getStatusInfo(info); break; case "debug": statusEnum = TrackingStatusEnum.Debug; break; case "prompt": statusEnum = TrackingStatusEnum.Prompt; break; default: statusEnum = TrackingStatusEnum.Other; break; } } else { statusEnum = TrackingStatusEnum.None; } if (TrackingStatusEvent != null) { TrackingStatusEvent(statusEnum, info); } }