From 805e10ccb9676efec98eaace84e51aa1d0c8dcca Mon Sep 17 00:00:00 2001 From: Morten Nielsen Date: Wed, 29 Jul 2020 16:45:44 -0700 Subject: [PATCH] Added IGeographicLocation message --- src/NmeaParser/Nmea/Gga.cs | 2 +- src/NmeaParser/Nmea/Gll.cs | 2 +- src/NmeaParser/Nmea/Gns.cs | 2 +- src/NmeaParser/Nmea/IGeographicLocation.cs | 22 ++++++++++++++++++++++ src/NmeaParser/Nmea/Rma.cs | 2 +- src/NmeaParser/Nmea/Rmc.cs | 2 +- 6 files changed, 27 insertions(+), 5 deletions(-) create mode 100644 src/NmeaParser/Nmea/IGeographicLocation.cs diff --git a/src/NmeaParser/Nmea/Gga.cs b/src/NmeaParser/Nmea/Gga.cs index c98e456..b191bd9 100644 --- a/src/NmeaParser/Nmea/Gga.cs +++ b/src/NmeaParser/Nmea/Gga.cs @@ -26,7 +26,7 @@ namespace NmeaParser.Messages /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Gpgga")] [NmeaMessageType("--GGA")] - public class Gga : NmeaMessage, ITimestampedMessage + public class Gga : NmeaMessage, ITimestampedMessage, IGeographicLocation { /// /// Initializes a new instance of the class. diff --git a/src/NmeaParser/Nmea/Gll.cs b/src/NmeaParser/Nmea/Gll.cs index 52fe6e1..cc2b4f1 100644 --- a/src/NmeaParser/Nmea/Gll.cs +++ b/src/NmeaParser/Nmea/Gll.cs @@ -24,7 +24,7 @@ namespace NmeaParser.Messages /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Gll")] [NmeaMessageType("--GLL")] - public class Gll : NmeaMessage, ITimestampedMessage + public class Gll : NmeaMessage, ITimestampedMessage, IGeographicLocation { /// /// Initializes a new instance of the class. diff --git a/src/NmeaParser/Nmea/Gns.cs b/src/NmeaParser/Nmea/Gns.cs index 78557d5..4214835 100644 --- a/src/NmeaParser/Nmea/Gns.cs +++ b/src/NmeaParser/Nmea/Gns.cs @@ -38,7 +38,7 @@ namespace NmeaParser.Messages /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Gns")] [NmeaMessageType("--GNS")] - public class Gns : NmeaMessage, ITimestampedMessage + public class Gns : NmeaMessage, ITimestampedMessage, IGeographicLocation { /* * Example of GNS messages: diff --git a/src/NmeaParser/Nmea/IGeographicLocation.cs b/src/NmeaParser/Nmea/IGeographicLocation.cs new file mode 100644 index 0000000..4c5bf73 --- /dev/null +++ b/src/NmeaParser/Nmea/IGeographicLocation.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace NmeaParser.Messages +{ + /// + /// Indicates a message that contains a latitude and longitude value + /// + public interface IGeographicLocation + { + /// + /// Gets the latitude component of the location + /// + double Latitude { get; } + + /// + /// Gets the longitude component of the location + /// + double Longitude { get; } + } +} diff --git a/src/NmeaParser/Nmea/Rma.cs b/src/NmeaParser/Nmea/Rma.cs index f2578de..c408c11 100644 --- a/src/NmeaParser/Nmea/Rma.cs +++ b/src/NmeaParser/Nmea/Rma.cs @@ -26,7 +26,7 @@ namespace NmeaParser.Messages /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Gprmb")] [NmeaMessageType("--RMA")] - public class Rma : NmeaMessage + public class Rma : NmeaMessage, IGeographicLocation { /// /// Positioning system status field diff --git a/src/NmeaParser/Nmea/Rmc.cs b/src/NmeaParser/Nmea/Rmc.cs index e4c0c4a..f9a8771 100644 --- a/src/NmeaParser/Nmea/Rmc.cs +++ b/src/NmeaParser/Nmea/Rmc.cs @@ -28,7 +28,7 @@ namespace NmeaParser.Messages /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Gprmc")] [NmeaMessageType("--RMC")] - public class Rmc : NmeaMessage, ITimestampedMessage + public class Rmc : NmeaMessage, ITimestampedMessage, IGeographicLocation { /// /// Initializes a new instance of the class.