[][src]Crate nmea_parser

NMEA Parser: NMEA parser for Rust

This Rust crate aims to cover the most important AIS and GNSS sentences. Supports AIS class A and B types. Identifies GPS, GLONASS, Galileo, BeiDou, Navic and QZSS satellite systems.

Structs

NmeaStore

Used to store partial sentences between function calls

Position

GLL - Geographic Position - Latitude/Longitude

PositionPrecision

GSA - GPS dilution of position (DOP) and active satellites

PositionTimeSatelites

GGA - Time, position, and fix related data

PositionVelocityTime

RMC - Position, velocity, and time (Recommended Minimum sentence C)

SatelliteInformation

GSV - Satellite information

VelocityMadeGood

VTG - Track made good and speed over ground

VesselDynamicData

AIVDM types 1, 2, 3 and 18

VesselStaticData

AIVDM type 5 and 24

Enums

AisClass

AIS type, either Class A or Class B

CargoType

Cargo type derived from ship and cargo type field

FaaMode

NMEA 2.3 standard has this information

FixMode

Position fix type

GpsQualityIndicator

Part of GGA

NavigationStatus

Navigation status for VesselDynamicData

NavigationSystem

Navigation system, deptected from NMEA GNSS sentence prefix (e.g. $BDGGA)

ParsedSentence

Result from function parse_sentence

PositionFixType

EPFD position fix types

PositioningSystemMeta

Location metadata about positioning system

ShipType

Ship type derived from ship and cargo type field

Station

AIS station based on talker id

Traits

LatLon

Provides access to geographical position in the object.

Functions

parse_sentence

Parses NMEA sentence into ParsedSentence enum. If the given sentence is part of multipart message, the state is saved into store object and ParsedSentence::Incomplete returned. The actual result is returned when all the parts have been provided for the function.