OpenCPN Partial API docs
N2kName Struct Reference

N2k uses CAN which defines the basic properties of messages. More...

#include <comm_navmsg.h>

Classes

union  tUnionDeviceInformation
 

Public Member Functions

 N2kName (uint64_t name)
 
std::string to_string () const
 
uint32_t GetNumber () const
 21 bits
 
uint16_t GetManufacturer () const
 9 bits
 
uint8_t GetDevInstanceLow () const
 3 bits
 
uint8_t GetDevInstanceHigh () const
 5 bits
 
uint8_t GetDevFunc () const
 8 bits
 
uint8_t GetDevClass () const
 7 bits
 
uint8_t GetSysInstance () const
 4 bits
 
uint8_t GetIndustryGroup () const
 4 bits
 
void SetUniqueNumber (uint32_t _UniqueNumber)
 
void SetManufacturerCode (uint16_t _ManufacturerCode)
 
void SetDeviceInstance (unsigned char _DeviceInstance)
 
void SetDeviceFunction (unsigned char _DeviceFunction)
 
void SetDeviceClass (unsigned char _DeviceClass)
 
void SetIndustryGroup (unsigned char _IndustryGroup)
 
void SetSystemInstance (unsigned char _SystemInstance)
 
uint64_t GetName () const
 

Static Public Member Functions

static uint64_t Parse (const std::string &s)
 

Public Attributes

tUnionDeviceInformation value
 

Detailed Description

N2k uses CAN which defines the basic properties of messages.

The NAME is an unique identifier for a node. CAN standardizes an address claim protocol. The net effect is that upper layers sees a stable NAME even if the address changes.

The structure of NAME is defined in the J/1939 standard, see https://www.kvaser.com/about-can/higher-layer-protocols/j1939-introduction/

Definition at line 59 of file comm_navmsg.h.


The documentation for this struct was generated from the following file: