1 #ifndef MARNAV__SEATALK__MESSAGE_6C__HPP
2 #define MARNAV__SEATALK__MESSAGE_6C__HPP
4 #include <marnav/seatalk/message.hpp>
5 #include <marnav/seatalk/equipment.hpp>
11 /// @brief Second Equipment ID
13 /// Second equipment ID message, follows message `01`.
16 /// 6c 05 XX XX XX XX XX XX
21 /// 6C 05 04 BA 20 28 2D 2D : ST60 Tridata
22 /// 6C 05 05 70 99 10 28 2D : ST60 Log
23 /// 6C 05 F3 18 00 26 2D 2D : ST80 Masterview
26 class message_6c
: public message
29 constexpr static const message_id ID
= message_id::equipment_id_2
;
30 constexpr static size_t SIZE
= 8;
33 constexpr static equipment_id st60_tridata
{{0x04, 0xba, 0x20, 0x28, 0x2d, 0x2d}};
34 constexpr static equipment_id st60_log
{{0x05, 0x70, 0x99, 0x10, 0x28, 0x2d}};
35 constexpr static equipment_id st80_masterview
{{0xf3, 0x18, 0x00, 0x26, 0x2d, 0x2d}};
39 message_6c(const message_6c
&) = default;
40 message_6c
& operator=(const message_6c
&) = default;
42 virtual raw
get_data() const override
;
44 static std::unique_ptr
<message
> parse(const raw
& data
);
50 equipment_id
get_equipment_id() const noexcept
{ return id_
; }
52 void set_equipment_id(const equipment_id
& t
) noexcept
{ id_
= t
; }