void OnAlert(PXCM3DScan.AlertData data) { try { switch (data.label) { case PXCM3DScan.AlertEvent.ALERT_TOO_FAR: { form.Invoke(new Action(() => form.ShowTooFar())); break; } case PXCM3DScan.AlertEvent.ALERT_TOO_CLOSE: { form.Invoke(new Action(() => form.ShowTooClose())); break; } case PXCM3DScan.AlertEvent.ALERT_IN_RANGE: { form.Invoke(new Action(() => form.HideRangeAlerts())); break; } case PXCM3DScan.AlertEvent.ALERT_LOST_TRACKING: { form.Invoke(new Action(() => form.ShowTrackingAlert())); break; } case PXCM3DScan.AlertEvent.ALERT_TRACKING: { form.Invoke(new Action(() => form.HideTrackingAlert())); break; } case PXCM3DScan.AlertEvent.ALERT_SUFFICIENT_STRUCTURE: { form.Invoke(new Action(() => form.HideOutOfRange())); break; } case PXCM3DScan.AlertEvent.ALERT_INSUFFICIENT_STRUCTURE: { form.Invoke(new Action(() => form.ShowOutOfRange())); break; } case PXCM3DScan.AlertEvent.ALERT_FACE_DETECTED: { form.Invoke(new Action(() => form.HideFaceNotDetected())); break; } case PXCM3DScan.AlertEvent.ALERT_FACE_NOT_DETECTED: { form.Invoke(new Action(() => form.ShowFaceNotDetected())); break; } } } catch { }; }