Skip to content

Commit c4b23c7

Browse files
committed
Publish 2.1.1
1 parent 7962bbb commit c4b23c7

33 files changed

+476
-71
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ Each [GNSS log](https://docs.novatel.com/OEM7/Content/Logs/Core_Logs.htm) needs
2828
| [`ALIGNBSLNXYZ`](https://docs.novatel.com/OEM7/Content/Logs/ALIGNBSLNXYZ.htm) | `XyzBaselinesUsingAlignCommand` |
2929
| [`ALIGNDOP`](https://docs.novatel.com/OEM7/Content/Logs/ALIGNDOP.htm) | `DopCommand` |
3030
| [`ALMANAC`](https://docs.novatel.com/OEM7/Content/Logs/ALMANAC.htm) | `AlmanacCommand` |
31+
| [`AUTHCODES`](https://docs.novatel.com/OEM7/Content/Logs/AUTHCODES.htm) | `AuthorizationCodesCommand` |
32+
| [`BDSALMANAC`](https://docs.novatel.com/OEM7/Content/Logs/BDSALMANAC.htm) | `BdsAlmanacCommand` |
3133
| [`BESTPOS`](https://docs.novatel.com/OEM7/Content/Logs/BESTPOS.htm) | `BestPositionCommand` |
3234
| [`RXSTATUS`](https://docs.novatel.com/OEM7/Content/Logs/RXSTATUS.htm) | `ReceiverStatusCommand` |
3335

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<asmv1:assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd" manifestVersion="1.0" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns="urn:schemas-microsoft-com:asm.v2" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:co.v2="urn:schemas-microsoft-com:clickonce.v2">
3-
<asmv1:assemblyIdentity name="IrvineCubeSat.GpsParser.Windows.exe" version="2.1.0.0" publicKeyToken="0000000000000000" language="neutral" processorArchitecture="msil" type="win32" />
3+
<asmv1:assemblyIdentity name="IrvineCubeSat.GpsParser.Windows.exe" version="2.1.1.0" publicKeyToken="0000000000000000" language="neutral" processorArchitecture="msil" type="win32" />
44
<description xmlns="urn:schemas-microsoft-com:asm.v1">A cross-platform library and application for parsing NovAtel GNSS command output message logs</description>
55
<application />
66
<entryPoint>
@@ -63,13 +63,13 @@
6363
<dsig:DigestValue>kIal5ra8OpL2kYCyRmrrDXjxuavsYED7gWdjB8iFhdE=</dsig:DigestValue>
6464
</hash>
6565
</file>
66-
<file name="IrvineCubeSat.GpsParser.dll" size="68096">
66+
<file name="IrvineCubeSat.GpsParser.dll" size="72704">
6767
<hash>
6868
<dsig:Transforms>
6969
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
7070
</dsig:Transforms>
7171
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
72-
<dsig:DigestValue>aaGrFOSsTnr7/hwfUOMlRxxYFkEdWPnBbFWKO29ZOyI=</dsig:DigestValue>
72+
<dsig:DigestValue>ksrsSneoNSf+TvGXFD5fpDgHcLoe6Ysb1oSzEA7OawU=</dsig:DigestValue>
7373
</hash>
7474
</file>
7575
<file name="IrvineCubeSat.GpsParser.Windows.deps.json" size="1395">
@@ -81,22 +81,22 @@
8181
<dsig:DigestValue>VOdtBJ/31+SgDbUVDejPcTBS2H2anN6CCgNgsdQ31qE=</dsig:DigestValue>
8282
</hash>
8383
</file>
84-
<file name="IrvineCubeSat.GpsParser.Windows.dll" size="38912">
84+
<file name="IrvineCubeSat.GpsParser.Windows.dll" size="39424">
8585
<hash>
8686
<dsig:Transforms>
8787
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
8888
</dsig:Transforms>
8989
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
90-
<dsig:DigestValue>XdFwRYN5jjLx6urYvaU81UiKY3bKde3b7e8YfNsodOQ=</dsig:DigestValue>
90+
<dsig:DigestValue>37lyruPwDx3AX6jvwHZuiIUiG3zJoL8VvGBl3KMd4e4=</dsig:DigestValue>
9191
</hash>
9292
</file>
93-
<file name="IrvineCubeSat.GpsParser.Windows.exe" size="147968">
93+
<file name="IrvineCubeSat.GpsParser.Windows.exe" size="148480">
9494
<hash>
9595
<dsig:Transforms>
9696
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
9797
</dsig:Transforms>
9898
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
99-
<dsig:DigestValue>tO8ZfmXgpGpP/Hpza0M3NixfX7DZb9RWqkTW0jB0NAQ=</dsig:DigestValue>
99+
<dsig:DigestValue>FIeGU+hoX7j/DrwtBgi/C89knoyFqcRqUgn+iNq/I68=</dsig:DigestValue>
100100
</hash>
101101
</file>
102102
<file name="IrvineCubeSat.GpsParser.Windows.runtimeconfig.json" size="372">
@@ -117,13 +117,13 @@
117117
<dsig:DigestValue>vYH1WC4DBvkBaTxn578fQvzIJHP0KN/8ZiiuFDRBSQ8=</dsig:DigestValue>
118118
</hash>
119119
</file>
120-
<file name="README.md" size="5445">
120+
<file name="README.md" size="5745">
121121
<hash>
122122
<dsig:Transforms>
123123
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
124124
</dsig:Transforms>
125125
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
126-
<dsig:DigestValue>UJUV7+DGRktlcIZI2F00en8yhm6Y+fn0LYmyNcgxbNE=</dsig:DigestValue>
126+
<dsig:DigestValue>TPCYpNl9Sc8rIz2V+uf4tK6rCN/rLkhmv0Z27tTBlJY=</dsig:DigestValue>
127127
</hash>
128128
</file>
129129
<file name="THIRD-PARTY-NOTICES.txt" size="12976">

docs/Application Files/IrvineCubeSat.GpsParser.Windows_2_1_0_0/README.md.deploy renamed to docs/Application Files/IrvineCubeSat.GpsParser.Windows_2_1_1_0/README.md.deploy

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ Each [GNSS log](https://docs.novatel.com/OEM7/Content/Logs/Core_Logs.htm) needs
2727
| [`ALIGNBSLNENU`](https://docs.novatel.com/OEM7/Content/Logs/ALIGNBSLNENU.htm) | `EnuBaselinesUsingAlignCommand` |
2828
| [`ALIGNBSLNXYZ`](https://docs.novatel.com/OEM7/Content/Logs/ALIGNBSLNXYZ.htm) | `XyzBaselinesUsingAlignCommand` |
2929
| [`ALIGNDOP`](https://docs.novatel.com/OEM7/Content/Logs/ALIGNDOP.htm) | `DopCommand` |
30+
| [`ALMANAC`](https://docs.novatel.com/OEM7/Content/Logs/ALMANAC.htm) | `AlmanacCommand` |
31+
| [`AUTHCODES`](https://docs.novatel.com/OEM7/Content/Logs/AUTHCODES.htm) | `AuthorizationCodesCommand` |
32+
| [`BDSALMANAC`](https://docs.novatel.com/OEM7/Content/Logs/BDSALMANAC.htm) | `BdsAlmanacCommand` |
3033
| [`BESTPOS`](https://docs.novatel.com/OEM7/Content/Logs/BESTPOS.htm) | `BestPositionCommand` |
3134
| [`RXSTATUS`](https://docs.novatel.com/OEM7/Content/Logs/RXSTATUS.htm) | `ReceiverStatusCommand` |
3235

docs/IrvineCubeSat.GpsParser.Windows.application

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<asmv1:assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd" manifestVersion="1.0" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns="urn:schemas-microsoft-com:asm.v2" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xrml="urn:mpeg:mpeg21:2003:01-REL-R-NS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1" xmlns:co.v2="urn:schemas-microsoft-com:clickonce.v2">
3-
<assemblyIdentity name="IrvineCubeSat.GpsParser.Windows.application" version="2.1.0.0" publicKeyToken="0000000000000000" language="neutral" processorArchitecture="msil" xmlns="urn:schemas-microsoft-com:asm.v1" />
3+
<assemblyIdentity name="IrvineCubeSat.GpsParser.Windows.application" version="2.1.1.0" publicKeyToken="0000000000000000" language="neutral" processorArchitecture="msil" xmlns="urn:schemas-microsoft-com:asm.v1" />
44
<description asmv2:publisher="Ishan Pranav" co.v1:suiteName="Irvine CubeSat" asmv2:product="GNSS Log Parser" asmv2:supportUrl="https://github.com/ishanpranav/novatel-gnss-log-parser" co.v1:errorReportUrl="https://github.com/ishanpranav/novatel-gnss-log-parser" xmlns="urn:schemas-microsoft-com:asm.v1">A cross-platform library and application for parsing NovAtel GNSS command output message logs</description>
55
<deployment install="true" mapFileExtensions="true" co.v1:createDesktopShortcut="true">
66
<subscription>
@@ -14,14 +14,14 @@
1414
<framework targetVersion="4.5" profile="Full" supportedRuntime="4.0.30319" />
1515
</compatibleFrameworks>
1616
<dependency>
17-
<dependentAssembly dependencyType="install" codebase="Application Files\IrvineCubeSat.GpsParser.Windows_2_1_0_0\IrvineCubeSat.GpsParser.Windows.dll.manifest" size="6900">
18-
<assemblyIdentity name="IrvineCubeSat.GpsParser.Windows.exe" version="2.1.0.0" publicKeyToken="0000000000000000" language="neutral" processorArchitecture="msil" type="win32" />
17+
<dependentAssembly dependencyType="install" codebase="Application Files\IrvineCubeSat.GpsParser.Windows_2_1_1_0\IrvineCubeSat.GpsParser.Windows.dll.manifest" size="6900">
18+
<assemblyIdentity name="IrvineCubeSat.GpsParser.Windows.exe" version="2.1.1.0" publicKeyToken="0000000000000000" language="neutral" processorArchitecture="msil" type="win32" />
1919
<hash>
2020
<dsig:Transforms>
2121
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
2222
</dsig:Transforms>
2323
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
24-
<dsig:DigestValue>1TH3rT6yueDsbSbRKkL8ch7EsSFFtJHnn/XmY2qfzKw=</dsig:DigestValue>
24+
<dsig:DigestValue>n5EJS9Kk8yIDojVb+PYxfua0p5g+HsTXwZ5kip8b8nQ=</dsig:DigestValue>
2525
</hash>
2626
</dependentAssembly>
2727
</dependency>

docs/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
<TR><TD ALIGN="LEFT"><TABLE CELLPADDING="2" CELLSPACING="0" BORDER="0" WIDTH="540"><TR><TD WIDTH="496">
6060

6161
<!-- Begin AppInfo -->
62-
<TABLE><TR><TD COLSPAN="3">&nbsp;</TD></TR><TR><TD><B>Name:</B></TD><TD WIDTH="5"><SPACER TYPE="block" WIDTH="10" /></TD><TD>GNSS Log Parser</TD></TR><TR><TD COLSPAN="3">&nbsp;</TD></TR><TR><TD><B>Version:</B></TD><TD WIDTH="5"><SPACER TYPE="block" WIDTH="10" /></TD><TD>2.1.0.0</TD></TR><TR><TD COLSPAN="3">&nbsp;</TD></TR><TR><TD><B>Publisher:</B></TD><TD WIDTH="5"><SPACER TYPE="block" WIDTH="10" /></TD><TD>Ishan Pranav</TD></TR><tr><td colspan="3">&nbsp;</td></tr></TABLE>
62+
<TABLE><TR><TD COLSPAN="3">&nbsp;</TD></TR><TR><TD><B>Name:</B></TD><TD WIDTH="5"><SPACER TYPE="block" WIDTH="10" /></TD><TD>GNSS Log Parser</TD></TR><TR><TD COLSPAN="3">&nbsp;</TD></TR><TR><TD><B>Version:</B></TD><TD WIDTH="5"><SPACER TYPE="block" WIDTH="10" /></TD><TD>2.1.1.0</TD></TR><TR><TD COLSPAN="3">&nbsp;</TD></TR><TR><TD><B>Publisher:</B></TD><TD WIDTH="5"><SPACER TYPE="block" WIDTH="10" /></TD><TD>Ishan Pranav</TD></TR><tr><td colspan="3">&nbsp;</td></tr></TABLE>
6363
<!-- End AppInfo -->
6464

6565

src/IrvineCubeSat.GpsParser.Windows/MainForm.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,14 +99,19 @@ private async void OnOpenClick(object sender, EventArgs e)
9999

100100
private async Task OpenAsync(string fileName)
101101
{
102+
string displayName;
102103
string relativePath = Path.GetRelativePath(Environment.CurrentDirectory, fileName);
103104

104105
if (relativePath.Length < fileName.Length)
105106
{
106-
fileName = relativePath;
107+
displayName = relativePath;
108+
}
109+
else
110+
{
111+
displayName = fileName;
107112
}
108113

109-
Text = $"{_text} - {fileName}";
114+
Text = $"{_text} - {displayName}";
110115
myDataGridView.DataSource = null;
111116
myPropertyGrid.SelectedObject = null;
112117

src/IrvineCubeSat.GpsParser.Windows/Properties/PublishProfiles/ClickOnceProfile.pubxml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Licensed under the MIT License.
88
<Project>
99
<PropertyGroup>
1010
<ApplicationRevision>0</ApplicationRevision>
11-
<ApplicationVersion>2.1.0.0</ApplicationVersion>
11+
<ApplicationVersion>2.1.1.0</ApplicationVersion>
1212
<BootstrapperEnabled>True</BootstrapperEnabled>
1313
<Configuration>Release</Configuration>
1414
<CreateWebPageOnPublish>True</CreateWebPageOnPublish>

src/IrvineCubeSat.GpsParser.Windows/Resources.restext

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ ALIGNBSLNENU = East-North-Up Baselines Using Align
1010
ALIGNBSLNXYZ = XYZ Baselines Using Align
1111
ALIGNDOP = Calculated DOP Values
1212
ALMANAC = Decoded GPS Almanac
13+
AUTHCODES = List of Authorization Codes
14+
BDSALMANAC = Decoded BDS Almanac
1315
BESTPOS = Best Position
1416
GetCommandMessage = {0:n0} - Body
1517
GetHeaderMessage = {0:n0} - Header

src/IrvineCubeSat.GpsParser/AsciiGpsParser.cs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -124,14 +124,16 @@ public async IAsyncEnumerable<AsciiMessage> ParseAsync(string value)
124124

125125
header.Command = header.Command.Substring(startIndex: 0, header.Command.Length - 1);
126126

127-
TypePair pair = _types[header.Command];
128-
IBodyParser parser = (IBodyParser)Activator.CreateInstance(pair.ParserType);
127+
if (_types.TryGetValue(header.Command, out TypePair pair))
128+
{
129+
IBodyParser parser = (IBodyParser)Activator.CreateInstance(pair.ParserType);
129130

130-
await csvReader.ReadAsync();
131+
await csvReader.ReadAsync();
131132

132-
object body = parser.ParseBody(pair.CommandType, csvReader);
133+
object body = parser.ParseBody(pair.CommandType, csvReader);
133134

134-
yield return new AsciiMessage(a, header, body, uint.Parse(match.Groups["B"].Value, NumberStyles.HexNumber));
135+
yield return new AsciiMessage(a, header, body, uint.Parse(match.Groups["B"].Value, NumberStyles.HexNumber));
136+
}
135137
}
136138
}
137139
}

src/IrvineCubeSat.GpsParser/AsciiMessageHeader.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,7 @@ public DateTime Timestamp
7979
{
8080
get
8181
{
82-
return new DateTime(year: 1980, month: 1, day: 6)
83-
.AddDays(Weeks * 7)
84-
.AddSeconds(Seconds);
82+
return Time.CreateTimestamp(Time.GpsReference, Weeks, Seconds);
8583
}
8684
}
8785

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,22 @@
11
# Copyright (c) 2019-2023 Ishan Pranav. All rights reserved.
22
# Licensed under the MIT License.
33

4+
Aging = Clock Correction Polynomial
5+
AuthorizationCode = Authorization Code
46
Auxiliary1Status = Auxiliary 1
57
Auxiliary2Status = Auxiliary 2
68
Auxiliary3Status = Auxiliary 3
79
Auxiliary4Status = Auxiliary 4
10+
BdsAlmanacCommand = Almanac
811
BaseStationId = Base Station
912
Command = Log
1013
DatumIdNumber = Datum
1114
GeometricDop = Dilution of Precision
1215
PositionType = Position
1316
ReceiverStatus = Receiver
17+
RightAscension = Right Ascension
18+
RoverReceiverId = Receiver
19+
SatelliteId = Satellite
1420
SatellitesTracked = Satellites
1521
SolutionStatus = Solution
1622
Timestamp = Timestamp

src/IrvineCubeSat.GpsParser/Attributes/LocalizedDescriptionAttribute.restext

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ ReceiverStatusPriorityMask = The receiver will trigger an error whenever any of
2424
ReceiverStatusEventSetMask = The receiver will trigger an error whenever any of these flags becomes active in the Receiver Status property.
2525
SatellitesInSolution = The number of satellites used in the solution.
2626
SatellitesTracked = The number of satellites tracked.
27-
Seconds = The number of seconds from the beginning of the GPS reference week.
27+
Seconds = The number of seconds from the beginning of the reference week.
2828
SequenceNumber = A number that counts from one less than the number of logs down to 0, where 0 means it is the last one of the set. Most logs only come out one at a time in which case this number is 0.
2929
StatusCodes = The number of status codes.
3030
TimeStatus = The value indicates the quality of the GPS reference time.

src/IrvineCubeSat.GpsParser/Attributes/LocalizedDisplayNameAttribute.restext

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
# Copyright (c) 2019-2023 Ishan Pranav. All rights reserved.
22
# Licensed under the MIT License.
33

4-
Aging = Clock Aging Parameter (s)
5-
AgingRate = Clock Aging Parameter (s/s)
4+
Aging = Clock Correction, Constant Coefficient (s)
5+
AgingRate = Clock Correction, Linear Coefficient (s/s)
66
AntiSpoofing = Anti-spoofing
77
ArgumentOfPerigree = Argument of Perigree (s)
8+
AuthorizationCode = Authorization Code
9+
AuthorizationCodeType = Authorization Code Type
810
Auxiliary1Status = Auxiliary 1 Status
911
Auxiliary2Status = Auxiliary 2 Status
1012
Auxiliary3Status = Auxiliary 3 Status
@@ -22,12 +24,14 @@ Auxiliary2StatusEventClearMask = Auxiliary 2 Status Event Clear Mask
2224
Auxiliary3StatusEventClearMask = Auxiliary 3 Status Event Clear Mask
2325
Auxiliary4StatusEventClearMask = Auxiliary 4 Status Event Clear Mask
2426
BaseStationId = Base Station ID
27+
CorrectionIncline = Correction of Orbit Reference Inclination (rad)
2528
DatumIdNumber = Datum ID #
2629
DifferentialAge = Differential Age
2730
EastBaseline = East Baseline (m)
2831
EastBaselineStandardDeviation = East Baseline Standard Deviation (m)
2932
ElevationMaskAngle = Elevation Mask Angle
3033
ExtendedSolutionStatus = Solution Status (Extended)
34+
FirmwareSignatureStatus = Firmware Signature Status
3135
GalileoBeiDouSignalsInSolution = Galileo and BeiDou Signals in Solution
3236
GeometricDop = Geometric Dilution of Precision
3337
GpsGlonassSignalsInSolution = GPS and GLONASS Signals in Solution
@@ -58,7 +62,9 @@ ReceiverStatusEventSetMask = Receiver Status Event Set Mask
5862
ReceiverStatusEventClearMask = Receiver Status Event Clear Mask
5963
RightAscension = Right Ascension (rad/s)
6064
RightAscensionRate = Rate of Right Ascension (rad)
65+
RootSemiMajorAxis = Square Root of Semi-major Axis (sqrt(m))
6166
RoverReceiverId = Rover Receiver ID
67+
SatelliteId = Satellite ID
6268
SatellitesAboveElevationMaskAngle = Satellites Above Elevation Mask Angle
6369
SatellitesInSolution = Satellites in Solution
6470
SatellitesTracked = Satellites Tracked
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
// AuthorizationCodesCommand.cs
2+
// Copyright (c) 2019-2023 Ishan Pranav. All rights reserved.
3+
// Licensed under the MIT License.
4+
5+
using System.ComponentModel;
6+
using IrvineCubeSat.GpsParser.Attributes;
7+
using IrvineCubeSat.GpsParser.BodyParsers;
8+
9+
namespace IrvineCubeSat.GpsParser
10+
{
11+
/// <summary>
12+
/// Represents a list of authorization codes (<c>AUTHCODES</c>) command message body.
13+
/// </summary>
14+
[Command("AUTHCODES", typeof(AuthorizationCodesParser))]
15+
public class AuthorizationCodesCommand
16+
{
17+
/// <summary>
18+
/// Initializes a new instance of the <see cref="AuthorizationCodesCommand"/> class.
19+
/// </summary>
20+
/// <param name="firmwareSignatureStatus">The status of the firmware signature.</param>
21+
/// <param name="authorizationCodeType">The authorization code type.</param>
22+
/// <param name="valid"><see langword="true"/> if the authorization code has been verified; otherwise, <see langword="false"/>.</param>
23+
/// <param name="authorizationCode">The authorization code string.</param>
24+
public AuthorizationCodesCommand(GnssFirmwareSignatureStatus firmwareSignatureStatus, GnssAuthorizationCodeType authorizationCodeType, bool valid, string authorizationCode)
25+
{
26+
FirmwareSignatureStatus = firmwareSignatureStatus;
27+
AuthorizationCodeType = authorizationCodeType;
28+
Valid = valid;
29+
AuthorizationCode = authorizationCode;
30+
}
31+
32+
/// <summary>
33+
/// Gets the status of the firmware signature.
34+
/// </summary>
35+
/// <value>The status of the firmware signature.</value>
36+
[LocalizedCategory(nameof(AuthorizationCode))]
37+
[LocalizedDescription(nameof(FirmwareSignatureStatus))]
38+
[LocalizedDisplayName(nameof(FirmwareSignatureStatus))]
39+
public GnssFirmwareSignatureStatus FirmwareSignatureStatus { get; }
40+
41+
/// <summary>
42+
/// Gets the authorization code type.
43+
/// </summary>
44+
/// <value>The authorization code type.</value>
45+
[LocalizedCategory(nameof(AuthorizationCode))]
46+
[LocalizedDescription(nameof(AuthorizationCodeType))]
47+
[LocalizedDisplayName(nameof(AuthorizationCodeType))]
48+
public GnssAuthorizationCodeType AuthorizationCodeType { get; }
49+
50+
/// <summary>
51+
/// Gets a value indicating whether the authorization code has been verified.
52+
/// </summary>
53+
/// <value><see langword="true"/> if the authorization code has been verified; otherwise, <see langword="false"/>.</value>
54+
[LocalizedCategory(nameof(AuthorizationCode))]
55+
[LocalizedDescription(nameof(Valid))]
56+
[LocalizedDisplayName(nameof(Valid))]
57+
public bool Valid { get; }
58+
59+
/// <summary>
60+
/// Gets an ASCII string representing the authorization code.
61+
/// </summary>
62+
/// <value>The authorization code string.</value>
63+
[LocalizedCategory(nameof(AuthorizationCode))]
64+
[LocalizedDescription(nameof(AuthorizationCode))]
65+
[LocalizedDisplayName(nameof(AuthorizationCode))]
66+
public string AuthorizationCode { get; }
67+
}
68+
}

0 commit comments

Comments
 (0)