protected virtual void OnVTGModeChanged(MTK3339 sender, VTGModes e) { if (VTGModeChanged != null) VTGModeChanged(sender, e); }
private void ParseVTGData(string[] Data) { double dTmp; // Course (in degrees) if (Data[1] != string.Empty) { dTmp = double.Parse(Data[1]); if (_course != dTmp) { _course = dTmp; OnCourseChanged(this, _course); } } // Ignore next field (reference, always T) // Ignore next 2 fields (needs GlobalTop Customization Service) // Speed (in Knots) if (Data[5] != string.Empty) { dTmp = double.Parse(Data[5]); if (_speed != dTmp) { _speed = dTmp; OnSpeedChanged(this, _speed, _speed * 1.151); } } // Ignore Next field (reference, always N) // Ignore next 2 fields (same speed but in km/hr) // VTG Mode switch (Data[9]) { case "D": // Differential if (_vtgMode != VTGModes.Differential) { _vtgMode = VTGModes.Differential; OnVTGModeChanged(this, _vtgMode); } break; case "E": // Estimated if (_vtgMode != VTGModes.Estimated) { _vtgMode = VTGModes.Estimated; OnVTGModeChanged(this, _vtgMode); } break; default: // Autonomous if (_vtgMode != VTGModes.Autonomous) { _vtgMode = VTGModes.Autonomous; OnVTGModeChanged(this, _vtgMode); } break; } }