nmealib 0.0.4
NMEA 0183/NMEA 2000 parsing library
Loading...
Searching...
No Matches
Classes | Typedefs
nmealib::nmea2000 Namespace Reference

Classes

struct  AccelerationTraits
 
struct  AngleTraits
 
struct  AngularRateTraits
 
struct  ByteTraits
 
class  DataType
 Strongly typed numeric wrapper for NMEA 2000 custom data types. More...
 
struct  DistanceTraits
 
class  FrameTooLongException
 Exception thrown when a CAN frame exceeds the maximum length of 223 bytes. More...
 
struct  HalfByteTraits
 
class  InvalidCanFrameException
 Exception thrown when the CAN frame is invalid. More...
 
class  InvalidPgnException
 Exception thrown when an NMEA 2000 PGN is outside the valid range. More...
 
struct  LatitudeTraits
 
struct  LongitudeTraits
 
class  Message2000
 Represents a generic NMEA 2000 message encapsulating a CAN frame. More...
 
class  MessageRegistry
 
class  Nmea2000Factory
 
class  PGN127245
 Strongly-typed class representing PGN 127245 - Rudder. More...
 
class  PGN127250
 Strongly-typed class representing PGN 127250 - Heading. More...
 
class  PGN127251
 Strongly-typed class representing PGN 127251 - Rate of Turn. More...
 
class  PGN127257
 Strongly-typed class representing PGN 127257 - Attitude. More...
 
class  PGN128001
 Strongly-typed class representing PGN 128001 - Vessel Acceleration. More...
 
class  PGN128259
 Strongly-typed class representing PGN 128259 - Speed, Water Referenced. More...
 
class  PGN129025
 Strongly-typed class representing PGN 129025 - Position, Rapid Update. More...
 
class  PGN129026
 Strongly-typed class representing PGN 129026 - COG, SOG, Rapid Update. More...
 
class  PGN130306
 Strongly-typed class representing PGN 127250 - Wind Data. More...
 
struct  SignedAngleTraits
 
struct  SpeedTraits
 

Typedefs

using Distance = DataType< DistanceTraits >
 Custom type representing distances in meters.
 
using Speed = DataType< SpeedTraits >
 Custom type representing speeds in meters per second.
 
using HalfByte = DataType< HalfByteTraits >
 Custom type representing 4 bits of data (0-15).
 
using Byte = DataType< ByteTraits >
 Custom type representing 8 bits of data (0-255).
 
using Angle = DataType< AngleTraits >
 Custom type representing angles in radians.
 
using SignedAngle = DataType< SignedAngleTraits >
 Custom type representing signed angles in radians.
 
using Latitude = DataType< LatitudeTraits >
 Custom type representing latitudes in degrees.
 
using Longitude = DataType< LongitudeTraits >
 Custom type representing longitudes in degrees.
 
using AngularRate = DataType< AngularRateTraits >
 Custom type representing angular rates in radians per second.
 
using Acceleration = DataType< AccelerationTraits >
 Custom type representing accelerations in meters per second squared.
 

Typedef Documentation

◆ Acceleration

Custom type representing accelerations in meters per second squared.

  • Range: [-327.64, 327.64] m/s²
  • Resolution: 0.01 m/s²
  • Raw type: int16_t
  • Target type: double (for use in higher-level fields that expect an acceleration value)

Definition at line 408 of file dataTypes.h.

◆ Angle

Custom type representing angles in radians.

  • Range: [0, 2π] rad
  • Resolution: 0.0001 rad
  • Raw type: uint16_t
  • Target type: float (for use in higher-level fields that expect an angle value)

Definition at line 343 of file dataTypes.h.

◆ AngularRate

Custom type representing angular rates in radians per second.

  • Range: [-67, 67] rad/s
  • Resolution: 0.00000003125 rad/s (1/32 micro-radian per second)
  • Raw type: int32_t
  • Target type: double (for use in higher-level fields that expect an angular rate value)

Definition at line 395 of file dataTypes.h.

◆ Byte

Custom type representing 8 bits of data (0-255).

  • Range: [0, 255]
  • Resolution: 1
  • Raw type: uint8_t
  • Target type: uint8_t (for use in higher-level fields that expect a byte value)

Definition at line 330 of file dataTypes.h.

◆ Distance

Custom type representing distances in meters.

  • Range: [0, 4.295e7] m
  • Resolution: 0.01 m
  • Raw type: uint32_t
  • Target type: float (for use in higher-level fields that expect a distance value)

Definition at line 291 of file dataTypes.h.

◆ HalfByte

Custom type representing 4 bits of data (0-15).

  • Range: [0, 15]
  • Resolution: 1
  • Raw type: uint8_t
  • Target type: uint8_t (for use in higher-level fields that expect a nibble value)

Definition at line 317 of file dataTypes.h.

◆ Latitude

Custom type representing latitudes in degrees.

  • Range: [-90, 90] deg
  • Resolution: 0.0000001 deg
  • Raw type: int32_t
  • Target type: float (for use in higher-level fields that expect a latitude value)

Definition at line 369 of file dataTypes.h.

◆ Longitude

Custom type representing longitudes in degrees.

  • Range: [-180, 180] deg
  • Resolution: 0.0000001 deg
  • Raw type: int32_t
  • Target type: float (for use in higher-level fields that expect a longitude value)

Definition at line 382 of file dataTypes.h.

◆ SignedAngle

Custom type representing signed angles in radians.

  • Range: [-π, π] rad
  • Resolution: 0.0001 rad
  • Raw type: uint16_t
  • Target type: float (for use in higher-level fields that expect a signed angle value)

Definition at line 356 of file dataTypes.h.

◆ Speed

Custom type representing speeds in meters per second.

  • Range: [0, 655.32] m/s
  • Resolution: 0.01 m/s
  • Raw type: uint16_t
  • Target type: float (for use in higher-level fields that expect a speed value)

Definition at line 304 of file dataTypes.h.