gnssview_old/plugins/gnss/lib/nmea/aam.dart

47 lines
1.4 KiB
Dart
Raw Normal View History

2024-07-31 19:04:11 +08:00
// ignore_for_file: constant_identifier_names
import 'apb.dart';
import 'parser.dart';
import 'sentence.dart';
import 'types.dart';
const String TypeAAM = 'AAM';
class AAM {
String statusArrivalCircleEntered;
String statusPerpendicularPassed;
double arrivalCircleRadius;
String arrivalCircleRadiusUnit;
String destinationWaypointID;
AAM(
{required this.statusArrivalCircleEntered,
required this.statusPerpendicularPassed,
required this.arrivalCircleRadius,
required this.arrivalCircleRadiusUnit,
required this.destinationWaypointID});
static AAM newAAM(BaseSentence s) {
var p = Parser(s);
p.assertType(TypeAAM);
return AAM(
statusArrivalCircleEntered: p.enumString(
0,
"arrival circle entered status",
[WPStatusArrivalCircleEnteredA, WPStatusArrivalCircleEnteredV]),
statusPerpendicularPassed: p.enumString(
1,
"perpendicularly passed status",
[WPStatusPerpendicularPassedA, WPStatusPerpendicularPassedV]),
arrivalCircleRadius: p.float64(2, "arrival circle radius"),
arrivalCircleRadiusUnit: p.enumString(3, "arrival circle radius units", [
DistanceUnitKilometre,
DistanceUnitNauticalMile,
DistanceUnitStatuteMile,
DistanceUnitMetre
]),
destinationWaypointID: p.string(4, "destination waypoint ID"),
);
}
}