NMEA2000 Library  0.1
Library to handle NMEA 2000 Communication written in C++
N2kTypes.h File Reference

This File contains all specific Enumerations to make NMEA2000 Messages easier for humans to read. More...

#include "NMEA2000StdTypes.h"
Include dependency graph for N2kTypes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

using tN2kAISAtoNType = tN2kDD305
 Alias easier for humans to read for tN2kDD305. More...
 
enum  tN2kAISDTE { N2kaisdte_Ready =0 , N2kaisdte_NotReady =1 }
 Enumeration of Data Terminal Equipment according to PNG 129794. More...
 
enum  tN2kAISMode { N2kaismode_Autonomous =0 , N2kaismode_Assigned =1 }
 Enumeration of AIS mode type according to PGN 129039. More...
 
enum  tN2kAISNavStatus {
  N2kaisns_Under_Way_Motoring =0 , N2kaisns_At_Anchor =1 , N2kaisns_Not_Under_Command =2 , N2kaisns_Restricted_Manoeuverability =3 ,
  N2kaisns_Constrained_By_Draught =4 , N2kaisns_Moored =5 , N2kaisns_Aground =6 , N2kaisns_Fishing =7 ,
  N2kaisns_Under_Way_Sailing =8 , N2kaisns_Hazardous_Material_High_Speed =9 , N2kaisns_Hazardous_Material_Wing_In_Ground =10 , N2kaisns_AIS_SART =14
}
 Enumeration of navigational status of an ship sending out an AIS signal according to PGN 129038. More...
 
enum  tN2kAISRepeat { N2kaisr_Initial =0 , N2kaisr_First =1 , N2kaisr_Second =2 , N2kaisr_Final =3 }
 Enumeration of AIS repeat indicator according to PGN129802, PGN129809, PGN129810, PGN129038, PGN129041,PGN129794. More...
 
enum  tN2kAISTransceiverInformation {
  N2kaischannel_A_VDL_reception =0 , N2kaischannel_B_VDL_reception =1 , N2kaischannel_A_VDL_transmission =2 , N2kaischannel_B_VDL_transmission =3 ,
  N2kaisown_information_not_broadcast =4
}
 Enumeration of 129039, 129041, 129802. More...
 
enum  tN2kAISUnit { N2kaisunit_ClassB_SOTDMA =0 , N2kaisunit_ClassB_CS =1 }
 Enumeration of AIS unit (transmission) type according to PGN 129039. More...
 
enum  tN2kAISVersion { N2kaisv_ITU_R_M_1371_1 =0 , N2kaisv_ITU_R_M_1371_3 =1 }
 Enumeration of AIS version which is used in PGN 129794. More...
 
using tN2kAnchorDockingStates = tN2kDD482
 Alias easier for humans to read for tN2kDD482. More...
 
enum  tN2kBatChem {
  N2kDCbc_LeadAcid =0 , N2kDCbc_LiIon =1 , N2kDCbc_NiCad =2 , N2kDCbc_ZnO =3 ,
  N2kDCbc_NiMh =4
}
 Enumeration of battery chemistries according to PGN 127513. More...
 
enum  tN2kBatEqSupport { N2kDCES_No =0 , N2kDCES_Yes =1 , N2kDCES_Error =2 , N2kDCES_Unavailable =3 }
 Enumeration of Supports Equalization according to PGN 127513. More...
 
enum  tN2kBatNomVolt {
  N2kDCbnv_6v =0 , N2kDCbnv_12v =1 , N2kDCbnv_24v =2 , N2kDCbnv_32v =3 ,
  N2kDCbnv_62v =4 , N2kDCbnv_42v =5 , N2kDCbnv_48v =6
}
 Enumeration of nominal battery voltage according to PGN 127513. More...
 
enum  tN2kBatType { N2kDCbt_Flooded =0 , N2kDCbt_Gel =1 , N2kDCbt_AGM =2 }
 Enumeration of Battery types according to PGN 127513. More...
 
enum  tN2kChargerMode {
  N2kCM_Standalone =0 , N2kCM_Primary =1 , N2kCM_Secondary =2 , N2kCM_Echo =3 ,
  N2kCM_Unavailable =15
}
 Enumeration of charger modes according to PGN 127507. More...
 
enum  tN2kChargeState {
  N2kCS_Not_Charging =0 , N2kCS_Bulk =1 , N2kCS_Absorption =2 , N2kCS_Overcharge =3 ,
  N2kCS_Equalise =4 , N2kCS_Float =5 , N2kCS_No_Float =6 , N2kCS_Constant_VI =7 ,
  N2kCS_Disabled =8 , N2kCS_Fault =9 , N2kCS_Unavailable =15
}
 Enumeration of state of the battery charger operation according to PGN127507. More...
 
using tN2kDataMode = tN2kDD025
 Alias easier for humans to read for tN2kDD025. More...
 
enum  tN2kDCType {
  N2kDCt_Battery =0 , N2kDCt_Alternator =1 , N2kDCt_Converter =2 , N2kDCt_SolarCell =3 ,
  N2kDCt_WindGenerator =4
}
 Enumeration of DC power sources according to PGN 127506. More...
 
using tN2kDelaySource = tN2kDD374
 Alias easier for humans to read for tN2kDD374. More...
 
enum  tN2kDistanceCalculationType { N2kdct_GreatCircle =0 , N2kdct_RhumbLine =1 }
 Enumeration of distance calculation types for navigation according to PGN129284. More...
 
using tN2kEngineDiscreteStatus1 = tN2kDD206
 Alias easier for humans to read for tN2kDD206. More...
 
using tN2kEngineDiscreteStatus2 = tN2kDD223
 Alias easier for humans to read for tN2kDD223. More...
 
enum  tN2kFluidType {
  N2kft_Fuel =0 , N2kft_Water =1 , N2kft_GrayWater =2 , N2kft_LiveWell =3 ,
  N2kft_Oil =4 , N2kft_BlackWater =5 , N2kft_FuelGasoline =6 , N2kft_Error =14 ,
  N2kft_Unavailable =15
}
 Enumeration of fluid types according to PGN127505. More...
 
using tN2kGenericStatusPair = tN2kDD002
 Alias easier for humans to read for tN2kDD002. More...
 
enum  tN2kGNSSDOPmode {
  N2kGNSSdm_1D =0 , N2kGNSSdm_2D =1 , N2kGNSSdm_3D =2 , N2kGNSSdm_Auto =3 ,
  N2kGNSSdm_Reserved =4 , N2kGNSSdm_Reserved2 =5 , N2kGNSSdm_Error =6 , N2kGNSSdm_Unavailable =7
}
 Enumeration of GNSS DOP Mode according to PGN129539. More...
 
enum  tN2kGNSSmethod {
  N2kGNSSm_noGNSS =0 , N2kGNSSm_GNSSfix =1 , N2kGNSSm_DGNSS =2 , N2kGNSSm_PreciseGNSS =3 ,
  N2kGNSSm_RTKFixed =4 , N2kGNSSm_RTKFloat =5 , N2kGNSSm_Error =14 , N2kGNSSm_Unavailable =15
}
 Enumeration of GNSS working methods according to PGN129029. More...
 
enum  tN2kGNSStype {
  N2kGNSSt_GPS =0 , N2kGNSSt_GLONASS =1 , N2kGNSSt_GPSGLONASS =2 , N2kGNSSt_GPSSBASWAAS =3 ,
  N2kGNSSt_GPSSBASWAASGLONASS =4 , N2kGNSSt_Chayka =5 , N2kGNSSt_integrated =6 , N2kGNSSt_surveyed =7 ,
  N2kGNSSt_Galileo =8
}
 Enumeration of the GPS system which is in use according to PGN129029, PGN129041 and PGN129794. More...
 
enum  tN2kHeadingReference { N2khr_true =0 , N2khr_magnetic =1 , N2khr_error =2 , N2khr_Unavailable =3 }
 Enumeration of the heading type according to PGN129233, PGN129237 , PGN129250, PGN129026 and PGN129284. More...
 
enum  tN2kHumiditySource { N2khs_InsideHumidity =0 , N2khs_OutsideHumidity =1 , N2khs_Undef =0xff }
 Enumeration of sources for a humidity value according to PGN130311 and PGN130313. More...
 
enum  tN2kMagneticVariation {
  N2kmagvar_Manual =0 , N2kmagvar_Chart =1 , N2kmagvar_Table =2 , N2kmagvar_Calc =3 ,
  N2kmagvar_WMM2000 =4 , N2kmagvar_WMM2005 =5 , N2kmagvar_WMM2010 =6 , N2kmagvar_WMM2015 =7 ,
  N2kmagvar_WMM2020 =8
}
 Enumeration of magnetic variation according to PGN 127258. More...
 
enum  tN2kMOBEmitterBatteryStatus { Good =0 , Low =1 }
 Enumeration of MOB emitter battery status according to PGN127233. More...
 
enum  tN2kMOBPositionSource { PositionEstimatedByVessel =0 , PositionReportedByMOBEmitter =1 }
 Enumeration of ManOverBoard position source according to PGN127233. More...
 
enum  tN2kMOBStatus { MOBEmitterActivated =0 , ManualOnBoardMOBButtonActivation =1 , TestMode =2 , MOBNotActive =3 }
 Enumeration of ManOverBoard state according to PGN127233. More...
 
using tN2kMotorPowerType = tN2kDD487
 Alias easier for humans to read for tN2kDD487. More...
 
enum  tN2kNavigationDirection {
  N2kdir_forward =0 , N2kdir_reverse =1 , N2kdir_reserved1 =2 , N2kdir_reserved2 =3 ,
  N2kdir_reserved3 =4 , N2kdir_reserved4 =5 , N2kdir_error =6 , N2kdir_unknown =7
}
 Enumeration of the navigation direction according to PGN129285. More...
 
enum  tN2kOnOff { N2kOnOff_Off =0 , N2kOnOff_On =1 , N2kOnOff_Error =2 , N2kOnOff_Unavailable =3 }
 Enumeration of On/Off status at a NMEA 2000 network. More...
 
enum  tN2kPressureSource {
  N2kps_Atmospheric = 0 , N2kps_Water = 1 , N2kps_Steam = 2 , N2kps_CompressedAir = 3 ,
  N2kps_Hydraulic = 4 , N2kps_Filter = 5 , N2kps_AltimeterSetting = 6 , N2kps_Oil = 7 ,
  N2kps_Fuel = 8 , N2kps_Reserved = 253 , N2kps_Error = 254 , N2kps_Unavailable = 255
}
 Enumeration of sources for a pressure value according to PGN130314 and PGN130315. More...
 
using tN2kPRNUsageStatus = tN2kDD124
 Alias easier for humans to read for tN2kDD124. More...
 
using tN2kRangeResidualMode = tN2kDD072
 Alias easier for humans to read for tN2kDD072. More...
 
using tN2kRodeTypeStates = tN2kDD481
 Alias easier for humans to read for tN2kDD481. More...
 
enum  tN2kRudderDirectionOrder { N2kRDO_NoDirectionOrder =0 , N2kRDO_MoveToStarboard =1 , N2kRDO_MoveToPort =2 , N2kRDO_Unavailable =7 }
 Enumeration of Rudder Direction Order according to PGN127237, 127245. More...
 
using tN2kSpeedType = tN2kDD488
 Alias easier for humans to read for tN2kDD488. More...
 
enum  tN2kSpeedWaterReferenceType {
  N2kSWRT_Paddle_wheel =0 , N2kSWRT_Pitot_tube =1 , N2kSWRT_Doppler_log =2 , N2kSWRT_Ultra_Sound =3 ,
  N2kSWRT_Electro_magnetic =4 , N2kSWRT_Error =254 , N2kSWRT_Unavailable =255
}
 Enumeration of speed thru water sensors types according to PGN128259. More...
 
enum  tN2kSteeringMode {
  N2kSM_MainSteering =0 , N2kSM_NonFollowUpDevice =1 , N2kSM_FollowUpDevice =2 , N2kSM_HeadingControlStandalone =3 ,
  N2kSM_HeadingControl =4 , N2kSM_TrackControl =5 , N2kSM_Unavailable =7
}
 Enumeration of the steering mode according to PGN127237. More...
 
enum  tN2kTempSource {
  N2kts_SeaTemperature =0 , N2kts_OutsideTemperature =1 , N2kts_InsideTemperature =2 , N2kts_EngineRoomTemperature =3 ,
  N2kts_MainCabinTemperature =4 , N2kts_LiveWellTemperature =5 , N2kts_BaitWellTemperature =6 , N2kts_RefridgerationTemperature =7 ,
  N2kts_HeatingSystemTemperature =8 , N2kts_DewPointTemperature =9 , N2kts_ApparentWindChillTemperature =10 , N2kts_TheoreticalWindChillTemperature =11 ,
  N2kts_HeatIndexTemperature =12 , N2kts_FreezerTemperature =13 , N2kts_ExhaustGasTemperature =14 , N2kts_ShaftSealTemperature =15
}
 Enumeration of sources for a temperature value according to PGN130311, PGN130312 and PGN130316. More...
 
using tN2kThrusterControlEvents = tN2kDD475
 Alias easier for humans to read for tN2kDD475. More...
 
using tN2kThrusterDirectionControl = tN2kDD473
 Alias easier for humans to read for tN2kDD473. More...
 
using tN2kThrusterMotorEvents = tN2kDD471
 Alias easier for humans to read for tN2kDD471. More...
 
using tN2kThrusterRetraction = tN2kDD474
 Alias easier for humans to read for tN2kDD474. More...
 
enum  tN2kTimeSource {
  N2ktimes_GPS =0 , N2ktimes_GLONASS =1 , N2ktimes_RadioStation =2 , N2ktimes_LocalCesiumClock =3 ,
  N2ktimes_LocalRubidiumClock =4 , N2ktimes_LocalCrystalClock =5
}
 Enumeration of sources for the system time according to PGN126992. More...
 
enum  tN2kTransmissionGear { N2kTG_Forward =0 , N2kTG_Neutral =1 , N2kTG_Reverse =2 , N2kTG_Unknown =3 }
 Enumeration of transmission state according to PGN 127493. More...
 
enum  tN2kTurnMode { N2kTM_RudderLimitControlled =0 , N2kTM_TurnRateControlled =1 , N2kTM_RadiusControlled =2 , N2kTM_Unavailable =7 }
 Enumeration of tunr control modes according to PGN127237. More...
 
using tN2kWindlassControlEvents = tN2kDD478
 Alias easier for humans to read for tN2kDD478. More...
 
using tN2kWindlassDirectionControl = tN2kDD484
 Alias easier for humans to read for tN2kDD484. More...
 
using tN2kWindlassMonitoringEvents = tN2kDD477
 Alias easier for humans to read for tN2kDD477. More...
 
using tN2kWindlassMotionStates = tN2kDD480
 Alias easier for humans to read for tN2kDD480. More...
 
using tN2kWindlassOperatingEvents = tN2kDD483
 Alias easier for humans to read for tN2kDD483. More...
 
enum  tN2kWindReference {
  N2kWind_True_North =0 , N2kWind_Magnetic =1 , N2kWind_Apparent =2 , N2kWind_Apprent =2 ,
  N2kWind_True_boat =3 , N2kWind_True_water =4 , N2kWind_Error =6 , N2kWind_Unavailable =7
}
 Enumeration of wind reference types according to PGN130306. More...
 
enum  tN2kXTEMode {
  N2kxtem_Autonomous =0 , N2kxtem_Differential =1 , N2kxtem_Estimated =2 , N2kxtem_Simulator =3 ,
  N2kxtem_Manual =4
}
 Enumeration of Cross Track Error modes according to PGN129283. More...
 

Detailed Description

This File contains all specific Enumerations to make NMEA2000 Messages easier for humans to read.

Each NMEA2000 message has a specific CanID (address) which consists a PGN Number (eg. PGN127802) and carries 8byte of raw data. For every PGN exists a detailed description how these 8 bytes transfer into usable values. To save bandwidth not all of values have the size of 1byte. All sizes from 1bit to 64bits are allowed. The Enumerations of this file make these values easier for humans to read, and are used in the corresponding SetXXX and ParseXXX functions of N2kMessages.h .

Definition in file N2kTypes.h.