protected virtual void OnSpeedChanged(MTK3339 sender, double knots, double mph)
 {
     if (SpeedChanged != null)
         SpeedChanged(sender, knots, mph);
 }
 protected virtual void OnVTGModeChanged(MTK3339 sender, VTGModes e)
 {
     if (VTGModeChanged != null)
         VTGModeChanged(sender, e);
 }
 protected virtual void OnSatellitesInViewChanged(MTK3339 sender, SatelliteInView[] e)
 {
     if (SatellitesInViewChanged != null)
         SatellitesInViewChanged(sender, e);
 }
 protected virtual void OnSatellitesUsedChanged(MTK3339 sender, int count)
 {
     if (SatellitesUsedChanged != null)
         SatellitesUsedChanged(sender, count);
 }
 protected virtual void OnGSAModeChanged(MTK3339 sender, GSAModes e)
 {
     if (GSAModeChanged != null)
         GSAModeChanged(sender, e);
 }
 protected virtual void OnRMCModeChanged(MTK3339 sender, RMCModes e)
 {
     if (RMCModeChanged != null)
         RMCModeChanged(sender, e);
 }
 protected virtual void OnFixTypeChanged(MTK3339 sender, FixTypes e)
 {
     if (FixTypeChanged != null)
         FixTypeChanged(sender, e);
 }
 protected virtual void OnError(MTK3339 sender, string data)
 {
     if (Error != null)
         Error(sender, data);
 }
 protected virtual void OnCourseChanged(MTK3339 sender, double degrees)
 {
     if (CourseChanged != null)
         CourseChanged(sender, degrees);
 }
 protected virtual void OnCoordinatesUpdated(MTK3339 sender)
 {
     if (CoordinatesUpdated != null)
         CoordinatesUpdated(sender);
 }
 protected virtual void OnAltitudeChanged(MTK3339 sender, double meters, int feet)
 {
     if (AltitudeChanged != null)
         AltitudeChanged(sender, meters, feet);
 }