mirror of
https://github.com/eried/portapack-mayhem.git
synced 2024-10-01 01:26:06 -04:00
Add AIS Class B Decoding
This commit is contained in:
parent
f5a604a0a5
commit
5096f91986
@ -195,6 +195,15 @@ void AISRecentEntry::update(const ais::Packet& packet) {
|
|||||||
destination = packet.text(302, 20);
|
destination = packet.text(302, 20);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 18:
|
||||||
|
last_position.timestamp = packet.received_at();
|
||||||
|
last_position.speed_over_ground = packet.read(46, 10);
|
||||||
|
last_position.latitude = packet.latitude(85);
|
||||||
|
last_position.longitude = packet.longitude(57);
|
||||||
|
last_position.course_over_ground = packet.read(112, 12);
|
||||||
|
last_position.true_heading = packet.read(124, 9);
|
||||||
|
break;
|
||||||
|
|
||||||
case 21:
|
case 21:
|
||||||
name = packet.text(43, 20);
|
name = packet.text(43, 20);
|
||||||
last_position.timestamp = packet.received_at();
|
last_position.timestamp = packet.received_at();
|
||||||
@ -202,6 +211,23 @@ void AISRecentEntry::update(const ais::Packet& packet) {
|
|||||||
last_position.longitude = packet.longitude(164);
|
last_position.longitude = packet.longitude(164);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 24:
|
||||||
|
switch (packet.read(38, 2))
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
name = packet.text(40, 20);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 1:
|
||||||
|
call_sign = packet.text(90, 7);
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user