Goby3 3.5.1
2026.06.04
Loading...
Searching...
No Matches
mavlink.h File Reference
#include <array>
#include <cstdint>
#include <memory>
#include <mutex>
#include <ostream>
#include <string>
#include <tuple>
#include <type_traits>
#include <unordered_map>
#include <utility>
#include <vector>
#include <mavlink/v2.0/common/common.hpp>
#include "goby/util/debug_logger/flex_ostream.h"
#include "interface.h"

Go to the source code of this file.

Classes

struct  goby::middleware::MAVLinkRegistry
 A registry of mavlink types used for decoding. More...
 Specialization for Mavlink message using runtime introspection (publish and subscribe_type_regex only). More...
struct  goby::middleware::MAVLinkTupleIndices
 Specialization for known compile-time Mavlink message and system id / component id metadata, e.g. DataType == HEARTBEAT, with tuple of <sysid, compid, msg>. More...
 Specialization for known compile-time Mavlink message without metadata, e.g. DataType == HEARTBEAT. More...

Namespaces

namespace  goby
 The global namespace for the Goby project.
namespace  goby::middleware
 Objects implementing the Goby nested middleware.

Functions

template<typename Tuple, typename T = typename std::tuple_element<MAVLinkTupleIndices::PACKET_INDEX, Tuple>::type, typename std::enable_if< std::is_base_of< mavlink::Message, T >::value >::type * = nullptr>
constexpr int goby::middleware::scheme ()
 Specialization for Mavlink with system id / component id metadata for tuple of <sysid, compid, msg>.
template<typename T, typename std::enable_if< std::is_same< T, std::string >::value >::type * = nullptr>
constexpr int goby::middleware::scheme ()
 Placeholder to provide an interface for the scheme() function family.