data/method/mavlink/pymavlink/generator/Ada/mavlink.ads

50 lines
2.0 KiB
Ada

-- Mavlink
-- Copyright Fil Andrii root.fi36@gmail.com 2022
with Interfaces;
package Mavlink is
pragma Pure (Mavlink);
Packet_Marker : constant Interfaces.Unsigned_8 := 16#FE#;
Packet_Marker_Length : constant := 1;
Packet_Checksum_Length : constant := 2;
Packet_Header_Length : constant := 5;
Packet_Payload_First : constant := Packet_Header_Length + Packet_Marker_Length;
Packet_Control_INfo_Size : constant := Packet_Marker_Length + Packet_Header_Length + Packet_Checksum_Length;
Tag_Length : constant := Standard'Address_Size / 8;
Message_Alignment : constant := 8;
Message_Size : constant := Positive (Float'Ceiling (Float (Tag_Length + Packet_Header_Length) /
Float (Message_Alignment))) * Message_Alignment;
subtype Msg_Id is Interfaces.Unsigned_8;
type Byte_Arrray is array (Natural range <>) of Interfaces.Unsigned_8;
type Unsigned_8_Array is array (Natural range <>) of Interfaces.Unsigned_8
with Component_Size => 8;
type Unsigned_16_Array is array (Natural range <>) of Interfaces.Unsigned_16
with Component_Size => 16;
type Unsigned_32_Array is array (Natural range <>) of Interfaces.Unsigned_32
with Component_Size => 32;
type Unsigned_64_Array is array (Natural range <>) of Interfaces.Unsigned_64
with Component_Size => 64;
type Integer_8_Array is array (Natural range <>) of Interfaces.Integer_8
with Component_Size => 8;
type Integer_16_Array is array (Natural range <>) of Interfaces.Integer_16
with Component_Size => 16;
type Integer_32_Array is array (Natural range <>) of Interfaces.Integer_32
with Component_Size => 32;
type Integer_64_Array is array (Natural range <>) of Interfaces.Integer_64
with Component_Size => 64;
type Short_Float_Array is array (Natural range <>) of Short_Float
with Component_Size => 32;
type Long_Float_Array is array (Natural range <>) of Long_Float
with Component_Size => 64;
end Mavlink;