Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
mavros::plugin::PluginBase Class Referenceabstract

MAVROS Plugin base class. More...

#include <mavros_plugin.h>

Inheritance diagram for mavros::plugin::PluginBase:
Inheritance graph
[legend]

Public Types

using ConstPtr = boost::shared_ptr< PluginBase const >
 
using HandlerCb = mavconn::MAVConnInterface::ReceivedCb
 generic message handler callback More...
 
using HandlerInfo = std::tuple< mavlink::msgid_t, const char *, size_t, HandlerCb >
 Tuple: MSG ID, MSG NAME, message type into hash_code, message handler callback. More...
 
using Ptr = boost::shared_ptr< PluginBase >
 
using Subscriptions = std::vector< HandlerInfo >
 Subscriptions vector. More...
 

Public Member Functions

virtual Subscriptions get_subscriptions ()=0
 Return vector of MAVLink message subscriptions (handlers) More...
 
virtual void initialize (UAS &uas)
 Plugin initializer. More...
 
virtual ~PluginBase ()
 

Protected Member Functions

virtual void capabilities_cb (UAS::MAV_CAP capabilities)
 
virtual void connection_cb (bool connected)
 
void enable_capabilities_cb ()
 
void enable_connection_cb ()
 
template<class _C >
HandlerInfo make_handler (const mavlink::msgid_t id, void(_C::*fn)(const mavlink::mavlink_message_t *msg, const mavconn::Framing framing))
 
template<class _C , class _T >
HandlerInfo make_handler (void(_C::*fn)(const mavlink::mavlink_message_t *, _T &))
 
 PluginBase ()
 Plugin constructor Should not do anything before initialize() More...
 

Protected Attributes

UASm_uas
 

Private Member Functions

 PluginBase (const PluginBase &)=delete
 

Detailed Description

MAVROS Plugin base class.

Examples:
dummy.cpp.

Definition at line 36 of file mavros_plugin.h.


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


mavros
Author(s): Vladimir Ermakov
autogenerated on Tue Jun 1 2021 02:16:10