VSM C++ SDK
Vehicle Specific Modules SDK
ugcs::vsm::mavlink::Payload_base Class Referenceabstract

Base class for MAVLink message payloads. More...

#include <mavlink.h>

Inheritance diagram for ugcs::vsm::mavlink::Payload_base:
ugcs::vsm::mavlink::Payload< TData, fields, msg_name, msg_id, extra_byte >

Public Types

typedef std::shared_ptr< Payload_basePtr
 Pointer type.
 
typedef std::weak_ptr< Payload_baseWeak_ptr
 Pointer type.
 

Public Member Functions

virtual size_t Get_size () const =0
 Get size of the message payload in bytes. More...
 
Io_buffer::Ptr Get_buffer () const
 Get Io_buffer instance which contains current content of the message. More...
 
std::string Dump () const
 Dump message content in human-readable format into a string. More...
 
virtual const char * Get_name () const =0
 Get message name. More...
 
virtual MESSAGE_ID_TYPE Get_id () const =0
 Get message id. More...
 
virtual uint8_t Get_extra_byte () const =0
 Get extra byte for CRC calculation. More...
 
virtual void Reset ()=0
 Reset all fields to UgCS default values. More...
 

Static Public Member Functions

template<typename... Args>
static Ptr Create (Args &&...args)
 Create an instance. More...
 

Protected Member Functions

virtual const void * Get_data () const =0
 Get raw data of the message. More...
 
virtual internal::Field_descriptorGet_fields () const =0
 Get fields description. More...
 

Detailed Description

Base class for MAVLink message payloads.

Member Function Documentation

template<typename... Args>
static Ptr ugcs::vsm::mavlink::Payload_base::Create ( Args &&...  args)
inlinestatic

Create an instance.

std::string ugcs::vsm::mavlink::Payload_base::Dump ( ) const

Dump message content in human-readable format into a string.

Io_buffer::Ptr ugcs::vsm::mavlink::Payload_base::Get_buffer ( ) const

Get Io_buffer instance which contains current content of the message.

virtual const void* ugcs::vsm::mavlink::Payload_base::Get_data ( ) const
protectedpure virtual

Get raw data of the message.

virtual uint8_t ugcs::vsm::mavlink::Payload_base::Get_extra_byte ( ) const
pure virtual

Get extra byte for CRC calculation.

Implemented in ugcs::vsm::mavlink::Payload< TData, fields, msg_name, msg_id, extra_byte >.

virtual internal::Field_descriptor* ugcs::vsm::mavlink::Payload_base::Get_fields ( ) const
protectedpure virtual

Get fields description.

Returns
Array of field descriptors. Last element should have "type_id" value NONE.
virtual MESSAGE_ID_TYPE ugcs::vsm::mavlink::Payload_base::Get_id ( ) const
pure virtual
virtual const char* ugcs::vsm::mavlink::Payload_base::Get_name ( ) const
pure virtual
virtual size_t ugcs::vsm::mavlink::Payload_base::Get_size ( ) const
pure virtual

Get size of the message payload in bytes.

Implemented in ugcs::vsm::mavlink::Payload< TData, fields, msg_name, msg_id, extra_byte >.

virtual void ugcs::vsm::mavlink::Payload_base::Reset ( )
pure virtual

Reset all fields to UgCS default values.

Implemented in ugcs::vsm::mavlink::Payload< TData, fields, msg_name, msg_id, extra_byte >.


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