VSM C++ SDK
Vehicle Specific Modules SDK
ugcs::vsm::mavlink Namespace Reference

All MAVLink definitions reside in this namespace. More...

Classes

class  Checksum
 Mavlink compatible checksum (ITU X.25/SAE AS-4 hash) calculation class. More...
 
class  Extension
 This class defines properties of particular protocol extension. More...
 
struct  Field_default_value
 Default value for a Mavlink field. More...
 
struct  Field_default_value< T, typename std::enable_if< std::is_floating_point< T >::value >::type >
 Partial specialization for floating point types. More...
 
struct  Field_default_value< T, typename std::enable_if< std::is_integral< T >::value >::type >
 Partial specialization for integer types. More...
 
struct  Header
 Fixed Mavlink header. More...
 
struct  Mavlink_kind_standard
 Standard kind of Mavlink protocol. More...
 
struct  Mavlink_kind_ugcs
 UgCS flavor of Mavlink protocol. More...
 
class  Message
 Specific Mavlink message with sender information from the header. More...
 
class  Payload
 Generalized MAVLink message payload. More...
 
class  Payload_base
 Base class for MAVLink message payloads. More...
 
struct  Payload_type_mapper
 Helper for static (compile time) mapping from Mavlink message ID to corresponding payload type. More...
 
class  Value
 Field value in MAVLink message. More...
 
class  Value_array
 Field in MAVLink message which is array of MAVLink values. More...
 
class  Value_array< Char, size >
 Partial specialization for characters array so it can be conveniently used with string semantic. More...
 

Typedefs

typedef std::pair< uint8_t, uint16_t > Extra_byte_length_pair
 A pair of values representing CRC extra byte and length of the Mavlink message payload. More...
 
typedef uint8_t MESSAGE_ID_TYPE
 Message id implementation type capable to hold a message id value from any extension (i.e. More...
 
typedef uint32_t System_id_common
 Common type for Mavlink system id which is able to hold system id values from any kind of Mavlink, currently Mavlink_kind_standard, Mavlink_kind_ugcs.
 
typedef Value< int8_t, CHAR > Char
 Value containers for all MAVLink types. More...
 
typedef Value< int8_t, INT8 > Int8
 
typedef Value< uint8_t, UINT8 > Uint8
 
typedef Value< int16_t, INT16 > Int16
 
typedef Value< uint16_t, UINT16 > Uint16
 
typedef Value< int32_t, INT32 > Int32
 
typedef Value< uint32_t, UINT32 > Uint32
 
typedef Value< int64_t, INT64 > Int64
 
typedef Value< uint64_t, UINT64 > Uint64
 
typedef Value< float, FLOAT > Float
 
typedef Value< double, DOUBLE > Double
 
typedef Value< uint8_t, UINT8_VERSION, VERSIONUint8_version
 

Enumerations

enum  { VERSION = 3, START_SIGN = 0xfe, SYSTEM_ID_NONE = 0, MAX_MAVLINK_PACKET_SIZE = 263 }
 
enum  Field_type_id {
  NONE, CHAR, INT8, UINT8,
  INT16, UINT16, INT32, UINT32,
  INT64, UINT64, FLOAT, DOUBLE,
  UINT8_VERSION, FIELD_TYPE_MAX
}
 ID for field type in MAVLink message. More...
 

Detailed Description

All MAVLink definitions reside in this namespace.

Typedef Documentation

typedef Value<int8_t, CHAR> ugcs::vsm::mavlink::Char

Value containers for all MAVLink types.

typedef std::pair<uint8_t, uint16_t> ugcs::vsm::mavlink::Extra_byte_length_pair

A pair of values representing CRC extra byte and length of the Mavlink message payload.

Message id implementation type capable to hold a message id value from any extension (i.e.

MESSAGE_ID from any extension can be assigned to this type).

Enumeration Type Documentation

anonymous enum
Enumerator
VERSION 

Current protocol version value.

START_SIGN 

Starting byte of Mavlink packet.

SYSTEM_ID_NONE 

System_id value denoting an unknown system, or all systems depending on context.

MAX_MAVLINK_PACKET_SIZE 

Maximum mavlink packet size on the wire.

6 (header length) + 255 (max payload length) + 2 (checksum)

ID for field type in MAVLink message.

Enumerator
NONE 

Special value for internal usage.

Indicates that value not present.

FIELD_TYPE_MAX 

Number of valid types.