text: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // source: core/core.proto
  
  #ifndef GOOGLE_PROTOBUF_INCLUDED_core_2fcore_2eproto
  #define GOOGLE_PROTOBUF_INCLUDED_core_2fcore_2eproto
  
  #include <limits>
  #include <string>
  
  #include <google/protobuf/port_def.inc>
  #if PROTOBUF_VERSION < 3015000
  #error This file was generated by a newer version of protoc which is
  #error incompatible with your Protocol Buffer headers. Please update
  #error your headers.
  #endif
  #if 3015003 < PROTOBUF_MIN_PROTOC_VERSION
  #error This file was generated by an older version of protoc which is
  #error incompatible with your Protocol Buffer headers. Please
  #error regenerate this file with a newer version of protoc.
  #endif
  
  #include <google/protobuf/port_undef.inc>
  #include <google/protobuf/io/coded_stream.h>
  #include <google/protobuf/arena.h>
  #include <google/protobuf/arenastring.h>
  #include <google/protobuf/generated_message_table_driven.h>
  #include <google/protobuf/generated_message_util.h>
  #include <google/protobuf/metadata_lite.h>
  #include <google/protobuf/generated_message_reflection.h>
  #include <google/protobuf/message.h>
  #include <google/protobuf/repeated_field.h>  // IWYU pragma: export
  #include <google/protobuf/extension_set.h>  // IWYU pragma: export
  #include <google/protobuf/unknown_field_set.h>
  // @@protoc_insertion_point(includes)
  #include <google/protobuf/port_def.inc>
  #define PROTOBUF_INTERNAL_EXPORT_core_2fcore_2eproto
  PROTOBUF_NAMESPACE_OPEN
  namespace internal {
  class AnyMetadata;
  }  // namespace internal
  PROTOBUF_NAMESPACE_CLOSE
  
  // Internal implementation detail -- do not use these members.
  struct TableStruct_core_2fcore_2eproto {
    static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
      PROTOBUF_SECTION_VARIABLE(protodesc_cold);
    static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
      PROTOBUF_SECTION_VARIABLE(protodesc_cold);
    static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[6]
      PROTOBUF_SECTION_VARIABLE(protodesc_cold);
    static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
    static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
    static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
  };
  extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_core_2fcore_2eproto;
  ::PROTOBUF_NAMESPACE_ID::Metadata descriptor_table_core_2fcore_2eproto_metadata_getter(int index);
  namespace mavsdk {
  namespace rpc {
  namespace core {
  class ConnectionState;
  struct ConnectionStateDefaultTypeInternal;
  extern ConnectionStateDefaultTypeInternal _ConnectionState_default_instance_;
  class ConnectionStateResponse;
  struct ConnectionStateResponseDefaultTypeInternal;
  extern ConnectionStateResponseDefaultTypeInternal _ConnectionStateResponse_default_instance_;
  class ListRunningPluginsRequest;
  struct ListRunningPluginsRequestDefaultTypeInternal;
  extern ListRunningPluginsRequestDefaultTypeInternal _ListRunningPluginsRequest_default_instance_;
  class ListRunningPluginsResponse;
  struct ListRunningPluginsResponseDefaultTypeInternal;
  extern ListRunningPluginsResponseDefaultTypeInternal _ListRunningPluginsResponse_default_instance_;
  class PluginInfo;
  struct PluginInfoDefaultTypeInternal;
  extern PluginInfoDefaultTypeInternal _PluginInfo_default_instance_;
  class SubscribeConnectionStateRequest;
  struct SubscribeConnectionStateRequestDefaultTypeInternal;
  extern SubscribeConnectionStateRequestDefaultTypeInternal _SubscribeConnectionStateRequest_default_instance_;
  }  // namespace core
  }  // namespace rpc
  }  // namespace mavsdk
  PROTOBUF_NAMESPACE_OPEN
  template<> ::mavsdk::rpc::core::ConnectionState* Arena::CreateMaybeMessage<::mavsdk::rpc::core::ConnectionState>(Arena*);
  template<> ::mavsdk::rpc::core::ConnectionStateResponse* Arena::CreateMaybeMessage<::mavsdk::rpc::core::ConnectionStateResponse>(Arena*);
  template<> ::mavsdk::rpc::core::ListRunningPluginsRequest* Arena::CreateMaybeMessage<::mavsdk::rpc::core::ListRunningPluginsRequest>(Arena*);
  template<> ::mavsdk::rpc::core::ListRunningPluginsResponse* Arena::CreateMaybeMessage<::mavsdk::rpc::core::ListRunningPluginsResponse>(Arena*);
  template<> ::mavsdk::rpc::core::PluginInfo* Arena::CreateMaybeMessage<::mavsdk::rpc::core::PluginInfo>(Arena*);
  template<> ::mavsdk::rpc::core::SubscribeConnectionStateRequest* Arena::CreateMaybeMessage<::mavsdk::rpc::core::SubscribeConnectionStateRequest>(Arena*);
  PROTOBUF_NAMESPACE_CLOSE
  namespace mavsdk {
  namespace rpc {
  namespace core {
  
  // ===================================================================
  
  class SubscribeConnectionStateRequest PROTOBUF_FINAL :
      public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:mavsdk.rpc.core.SubscribeConnectionStateRequest) */ {
   public:
    inline SubscribeConnectionStateRequest() : SubscribeConnectionStateRequest(nullptr) {}
    virtual ~SubscribeConnectionStateRequest();
    explicit constexpr SubscribeConnectionStateRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
  
    SubscribeConnectionStateRequest(const SubscribeConnectionStateRequest& from);
    SubscribeConnectionStateRequest(SubscribeConnectionStateRequest&& from) noexcept
      : SubscribeConnectionStateRequest() {
      *this = ::std::move(from);
    }
  
    inline SubscribeConnectionStateRequest& operator=(const SubscribeConnectionStateRequest& from) {
      CopyFrom(from);
      return *this;
    }
    inline SubscribeConnectionStateRequest& operator=(SubscribeConnectionStateRequest&& from) noexcept {
      if (GetArena() == from.GetArena()) {
        if (this != &from) InternalSwap(&from);
      } else {
        CopyFrom(from);
      }
      return *this;
    }
  
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
      return GetDescriptor();
    }
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
      return GetMetadataStatic().descriptor;
    }
    static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
      return GetMetadataStatic().reflection;
    }
    static const SubscribeConnectionStateRequest& default_instance() {
      return *internal_default_instance();
    }
    static inline const SubscribeConnectionStateRequest* internal_default_instance() {
      return reinterpret_cast<const SubscribeConnectionStateRequest*>(
                 &_SubscribeConnectionStateRequest_default_instance_);
    }
    static constexpr int kIndexInFileMessages =
      0;
  
    friend void swap(SubscribeConnectionStateRequest& a, SubscribeConnectionStateRequest& b) {
      a.Swap(&b);
    }
    inline void Swap(SubscribeConnectionStateRequest* other) {
      if (other == this) return;
      if (GetArena() == other->GetArena()) {
        InternalSwap(other);
      } else {
        ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
      }
    }
    void UnsafeArenaSwap(SubscribeConnectionStateRequest* other) {
      if (other == this) return;
      GOOGLE_DCHECK(GetArena() == other->GetArena());
      InternalSwap(other);
    }
  
    // implements Message ----------------------------------------------
  
    inline SubscribeConnectionStateRequest* New() const final {
      return CreateMaybeMessage<SubscribeConnectionStateRequest>(nullptr);
    }
  
    SubscribeConnectionStateRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
      return CreateMaybeMessage<SubscribeConnectionStateRequest>(arena);
    }
    void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void CopyFrom(const SubscribeConnectionStateRequest& from);
    void MergeFrom(const SubscribeConnectionStateRequest& from);
    PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
    bool IsInitialized() const final;
  
    size_t ByteSizeLong() const final;
    const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
    ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
        ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
    int GetCachedSize() const final { return _cached_size_.Get(); }
  
    private:
    inline void SharedCtor();
    inline void SharedDtor();
    void SetCachedSize(int size) const final;
    void InternalSwap(SubscribeConnectionStateRequest* other);
    friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
    static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
      return "mavsdk.rpc.core.SubscribeConnectionStateRequest";
    }
    protected:
    explicit SubscribeConnectionStateRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    private:
    static void ArenaDtor(void* object);
    inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    public:
  
    ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
    private:
    static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
      return ::descriptor_table_core_2fcore_2eproto_metadata_getter(kIndexInFileMessages);
    }
  
    public:
  
    // nested types ----------------------------------------------------
  
    // accessors -------------------------------------------------------
  
    // @@protoc_insertion_point(class_scope:mavsdk.rpc.core.SubscribeConnectionStateRequest)
   private:
    class _Internal;
  
    template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
    typedef void InternalArenaConstructable_;
    typedef void DestructorSkippable_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    friend struct ::TableStruct_core_2fcore_2eproto;
  };
  // -------------------------------------------------------------------
  
  class ConnectionStateResponse PROTOBUF_FINAL :
      public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:mavsdk.rpc.core.ConnectionStateResponse) */ {
   public:
    inline ConnectionStateResponse() : ConnectionStateResponse(nullptr) {}
    virtual ~ConnectionStateResponse();
    explicit constexpr ConnectionStateResponse(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
  
    ConnectionStateResponse(const ConnectionStateResponse& from);
    ConnectionStateResponse(ConnectionStateResponse&& from) noexcept
      : ConnectionStateResponse() {
      *this = ::std::move(from);
    }
  
    inline ConnectionStateResponse& operator=(const ConnectionStateResponse& from) {
      CopyFrom(from);
      return *this;
    }
    inline ConnectionStateResponse& operator=(ConnectionStateResponse&& from) noexcept {
      if (GetArena() == from.GetArena()) {
        if (this != &from) InternalSwap(&from);
      } else {
        CopyFrom(from);
      }
      return *this;
    }
  
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
      return GetDescriptor();
    }
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
      return GetMetadataStatic().descriptor;
    }
    static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
      return GetMetadataStatic().reflection;
    }
    static const ConnectionStateResponse& default_instance() {
      return *internal_default_instance();
    }
    static inline const ConnectionStateResponse* internal_default_instance() {
      return reinterpret_cast<const ConnectionStateResponse*>(
                 &_ConnectionStateResponse_default_instance_);
    }
    static constexpr int kIndexInFileMessages =
      1;
  
    friend void swap(ConnectionStateResponse& a, ConnectionStateResponse& b) {
      a.Swap(&b);
    }
    inline void Swap(ConnectionStateResponse* other) {
      if (other == this) return;
      if (GetArena() == other->GetArena()) {
        InternalSwap(other);
      } else {
        ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
      }
    }
    void UnsafeArenaSwap(ConnectionStateResponse* other) {
      if (other == this) return;
      GOOGLE_DCHECK(GetArena() == other->GetArena());
      InternalSwap(other);
    }
  
    // implements Message ----------------------------------------------
  
    inline ConnectionStateResponse* New() const final {
      return CreateMaybeMessage<ConnectionStateResponse>(nullptr);
    }
  
    ConnectionStateResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
      return CreateMaybeMessage<ConnectionStateResponse>(arena);
    }
    void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void CopyFrom(const ConnectionStateResponse& from);
    void MergeFrom(const ConnectionStateResponse& from);
    PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
    bool IsInitialized() const final;
  
    size_t ByteSizeLong() const final;
    const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
    ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
        ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
    int GetCachedSize() const final { return _cached_size_.Get(); }
  
    private:
    inline void SharedCtor();
    inline void SharedDtor();
    void SetCachedSize(int size) const final;
    void InternalSwap(ConnectionStateResponse* other);
    friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
    static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
      return "mavsdk.rpc.core.ConnectionStateResponse";
    }
    protected:
    explicit ConnectionStateResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    private:
    static void ArenaDtor(void* object);
    inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    public:
  
    ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
    private:
    static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
      return ::descriptor_table_core_2fcore_2eproto_metadata_getter(kIndexInFileMessages);
    }
  
    public:
  
    // nested types ----------------------------------------------------
  
    // accessors -------------------------------------------------------
  
    enum : int {
      kConnectionStateFieldNumber = 1,
    };
    // .mavsdk.rpc.core.ConnectionState connection_state = 1;
    bool has_connection_state() const;
    private:
    bool _internal_has_connection_state() const;
    public:
    void clear_connection_state();
    const ::mavsdk::rpc::core::ConnectionState& connection_state() const;
    ::mavsdk::rpc::core::ConnectionState* release_connection_state();
    ::mavsdk::rpc::core::ConnectionState* mutable_connection_state();
    void set_allocated_connection_state(::mavsdk::rpc::core::ConnectionState* connection_state);
    private:
    const ::mavsdk::rpc::core::ConnectionState& _internal_connection_state() const;
    ::mavsdk::rpc::core::ConnectionState* _internal_mutable_connection_state();
    public:
    void unsafe_arena_set_allocated_connection_state(
        ::mavsdk::rpc::core::ConnectionState* connection_state);
    ::mavsdk::rpc::core::ConnectionState* unsafe_arena_release_connection_state();
  
    // @@protoc_insertion_point(class_scope:mavsdk.rpc.core.ConnectionStateResponse)
   private:
    class _Internal;
  
    template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
    typedef void InternalArenaConstructable_;
    typedef void DestructorSkippable_;
    ::mavsdk::rpc::core::ConnectionState* connection_state_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    friend struct ::TableStruct_core_2fcore_2eproto;
  };
  // -------------------------------------------------------------------
  
  class ListRunningPluginsRequest PROTOBUF_FINAL :
      public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:mavsdk.rpc.core.ListRunningPluginsRequest) */ {
   public:
    inline ListRunningPluginsRequest() : ListRunningPluginsRequest(nullptr) {}
    virtual ~ListRunningPluginsRequest();
    explicit constexpr ListRunningPluginsRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
  
    ListRunningPluginsRequest(const ListRunningPluginsRequest& from);
    ListRunningPluginsRequest(ListRunningPluginsRequest&& from) noexcept
      : ListRunningPluginsRequest() {
      *this = ::std::move(from);
    }
  
    inline ListRunningPluginsRequest& operator=(const ListRunningPluginsRequest& from) {
      CopyFrom(from);
      return *this;
    }
    inline ListRunningPluginsRequest& operator=(ListRunningPluginsRequest&& from) noexcept {
      if (GetArena() == from.GetArena()) {
        if (this != &from) InternalSwap(&from);
      } else {
        CopyFrom(from);
      }
      return *this;
    }
  
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
      return GetDescriptor();
    }
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
      return GetMetadataStatic().descriptor;
    }
    static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
      return GetMetadataStatic().reflection;
    }
    static const ListRunningPluginsRequest& default_instance() {
      return *internal_default_instance();
    }
    static inline const ListRunningPluginsRequest* internal_default_instance() {
      return reinterpret_cast<const ListRunningPluginsRequest*>(
                 &_ListRunningPluginsRequest_default_instance_);
    }
    static constexpr int kIndexInFileMessages =
      2;
  
    friend void swap(ListRunningPluginsRequest& a, ListRunningPluginsRequest& b) {
      a.Swap(&b);
    }
    inline void Swap(ListRunningPluginsRequest* other) {
      if (other == this) return;
      if (GetArena() == other->GetArena()) {
        InternalSwap(other);
      } else {
        ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
      }
    }
    void UnsafeArenaSwap(ListRunningPluginsRequest* other) {
      if (other == this) return;
      GOOGLE_DCHECK(GetArena() == other->GetArena());
      InternalSwap(other);
    }
  
    // implements Message ----------------------------------------------
  
    inline ListRunningPluginsRequest* New() const final {
      return CreateMaybeMessage<ListRunningPluginsRequest>(nullptr);
    }
  
    ListRunningPluginsRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
      return CreateMaybeMessage<ListRunningPluginsRequest>(arena);
    }
    void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void CopyFrom(const ListRunningPluginsRequest& from);
    void MergeFrom(const ListRunningPluginsRequest& from);
    PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
    bool IsInitialized() const final;
  
    size_t ByteSizeLong() const final;
    const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
    ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
        ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
    int GetCachedSize() const final { return _cached_size_.Get(); }
  
    private:
    inline void SharedCtor();
    inline void SharedDtor();
    void SetCachedSize(int size) const final;
    void InternalSwap(ListRunningPluginsRequest* other);
    friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
    static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
      return "mavsdk.rpc.core.ListRunningPluginsRequest";
    }
    protected:
    explicit ListRunningPluginsRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    private:
    static void ArenaDtor(void* object);
    inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    public:
  
    ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
    private:
    static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
      return ::descriptor_table_core_2fcore_2eproto_metadata_getter(kIndexInFileMessages);
    }
  
    public:
  
    // nested types ----------------------------------------------------
  
    // accessors -------------------------------------------------------
  
    // @@protoc_insertion_point(class_scope:mavsdk.rpc.core.ListRunningPluginsRequest)
   private:
    class _Internal;
  
    template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
    typedef void InternalArenaConstructable_;
    typedef void DestructorSkippable_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    friend struct ::TableStruct_core_2fcore_2eproto;
  };
  // -------------------------------------------------------------------
  
  class ListRunningPluginsResponse PROTOBUF_FINAL :
      public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:mavsdk.rpc.core.ListRunningPluginsResponse) */ {
   public:
    inline ListRunningPluginsResponse() : ListRunningPluginsResponse(nullptr) {}
    virtual ~ListRunningPluginsResponse();
    explicit constexpr ListRunningPluginsResponse(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
  
    ListRunningPluginsResponse(const ListRunningPluginsResponse& from);
    ListRunningPluginsResponse(ListRunningPluginsResponse&& from) noexcept
      : ListRunningPluginsResponse() {
      *this = ::std::move(from);
    }
  
    inline ListRunningPluginsResponse& operator=(const ListRunningPluginsResponse& from) {
      CopyFrom(from);
      return *this;
    }
    inline ListRunningPluginsResponse& operator=(ListRunningPluginsResponse&& from) noexcept {
      if (GetArena() == from.GetArena()) {
        if (this != &from) InternalSwap(&from);
      } else {
        CopyFrom(from);
      }
      return *this;
    }
  
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
      return GetDescriptor();
    }
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
      return GetMetadataStatic().descriptor;
    }
    static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
      return GetMetadataStatic().reflection;
    }
    static const ListRunningPluginsResponse& default_instance() {
      return *internal_default_instance();
    }
    static inline const ListRunningPluginsResponse* internal_default_instance() {
      return reinterpret_cast<const ListRunningPluginsResponse*>(
                 &_ListRunningPluginsResponse_default_instance_);
    }
    static constexpr int kIndexInFileMessages =
      3;
  
    friend void swap(ListRunningPluginsResponse& a, ListRunningPluginsResponse& b) {
      a.Swap(&b);
    }
    inline void Swap(ListRunningPluginsResponse* other) {
      if (other == this) return;
      if (GetArena() == other->GetArena()) {
        InternalSwap(other);
      } else {
        ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
      }
    }
    void UnsafeArenaSwap(ListRunningPluginsResponse* other) {
      if (other == this) return;
      GOOGLE_DCHECK(GetArena() == other->GetArena());
      InternalSwap(other);
    }
  
    // implements Message ----------------------------------------------
  
    inline ListRunningPluginsResponse* New() const final {
      return CreateMaybeMessage<ListRunningPluginsResponse>(nullptr);
    }
  
    ListRunningPluginsResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
      return CreateMaybeMessage<ListRunningPluginsResponse>(arena);
    }
    void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void CopyFrom(const ListRunningPluginsResponse& from);
    void MergeFrom(const ListRunningPluginsResponse& from);
    PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
    bool IsInitialized() const final;
  
    size_t ByteSizeLong() const final;
    const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
    ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
        ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
    int GetCachedSize() const final { return _cached_size_.Get(); }
  
    private:
    inline void SharedCtor();
    inline void SharedDtor();
    void SetCachedSize(int size) const final;
    void InternalSwap(ListRunningPluginsResponse* other);
    friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
    static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
      return "mavsdk.rpc.core.ListRunningPluginsResponse";
    }
    protected:
    explicit ListRunningPluginsResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    private:
    static void ArenaDtor(void* object);
    inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    public:
  
    ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
    private:
    static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
      return ::descriptor_table_core_2fcore_2eproto_metadata_getter(kIndexInFileMessages);
    }
  
    public:
  
    // nested types ----------------------------------------------------
  
    // accessors -------------------------------------------------------
  
    enum : int {
      kPluginInfoFieldNumber = 1,
    };
    // repeated .mavsdk.rpc.core.PluginInfo plugin_info = 1;
    int plugin_info_size() const;
    private:
    int _internal_plugin_info_size() const;
    public:
    void clear_plugin_info();
    ::mavsdk::rpc::core::PluginInfo* mutable_plugin_info(int index);
    ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::mavsdk::rpc::core::PluginInfo >*
        mutable_plugin_info();
    private:
    const ::mavsdk::rpc::core::PluginInfo& _internal_plugin_info(int index) const;
    ::mavsdk::rpc::core::PluginInfo* _internal_add_plugin_info();
    public:
    const ::mavsdk::rpc::core::PluginInfo& plugin_info(int index) const;
    ::mavsdk::rpc::core::PluginInfo* add_plugin_info();
    const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::mavsdk::rpc::core::PluginInfo >&
        plugin_info() const;
  
    // @@protoc_insertion_point(class_scope:mavsdk.rpc.core.ListRunningPluginsResponse)
   private:
    class _Internal;
  
    template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
    typedef void InternalArenaConstructable_;
    typedef void DestructorSkippable_;
    ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::mavsdk::rpc::core::PluginInfo > plugin_info_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    friend struct ::TableStruct_core_2fcore_2eproto;
  };
  // -------------------------------------------------------------------
  
  class ConnectionState PROTOBUF_FINAL :
      public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:mavsdk.rpc.core.ConnectionState) */ {
   public:
    inline ConnectionState() : ConnectionState(nullptr) {}
    virtual ~ConnectionState();
    explicit constexpr ConnectionState(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
  
    ConnectionState(const ConnectionState& from);
    ConnectionState(ConnectionState&& from) noexcept
      : ConnectionState() {
      *this = ::std::move(from);
    }
  
    inline ConnectionState& operator=(const ConnectionState& from) {
      CopyFrom(from);
      return *this;
    }
    inline ConnectionState& operator=(ConnectionState&& from) noexcept {
      if (GetArena() == from.GetArena()) {
        if (this != &from) InternalSwap(&from);
      } else {
        CopyFrom(from);
      }
      return *this;
    }
  
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
      return GetDescriptor();
    }
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
      return GetMetadataStatic().descriptor;
    }
    static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
      return GetMetadataStatic().reflection;
    }
    static const ConnectionState& default_instance() {
      return *internal_default_instance();
    }
    static inline const ConnectionState* internal_default_instance() {
      return reinterpret_cast<const ConnectionState*>(
                 &_ConnectionState_default_instance_);
    }
    static constexpr int kIndexInFileMessages =
      4;
  
    friend void swap(ConnectionState& a, ConnectionState& b) {
      a.Swap(&b);
    }
    inline void Swap(ConnectionState* other) {
      if (other == this) return;
      if (GetArena() == other->GetArena()) {
        InternalSwap(other);
      } else {
        ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
      }
    }
    void UnsafeArenaSwap(ConnectionState* other) {
      if (other == this) return;
      GOOGLE_DCHECK(GetArena() == other->GetArena());
      InternalSwap(other);
    }
  
    // implements Message ----------------------------------------------
  
    inline ConnectionState* New() const final {
      return CreateMaybeMessage<ConnectionState>(nullptr);
    }
  
    ConnectionState* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
      return CreateMaybeMessage<ConnectionState>(arena);
    }
    void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void CopyFrom(const ConnectionState& from);
    void MergeFrom(const ConnectionState& from);
    PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
    bool IsInitialized() const final;
  
    size_t ByteSizeLong() const final;
    const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
    ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
        ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
    int GetCachedSize() const final { return _cached_size_.Get(); }
  
    private:
    inline void SharedCtor();
    inline void SharedDtor();
    void SetCachedSize(int size) const final;
    void InternalSwap(ConnectionState* other);
    friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
    static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
      return "mavsdk.rpc.core.ConnectionState";
    }
    protected:
    explicit ConnectionState(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    private:
    static void ArenaDtor(void* object);
    inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    public:
  
    ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
    private:
    static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
      return ::descriptor_table_core_2fcore_2eproto_metadata_getter(kIndexInFileMessages);
    }
  
    public:
  
    // nested types ----------------------------------------------------
  
    // accessors -------------------------------------------------------
  
    enum : int {
      kUuidFieldNumber = 1,
      kIsConnectedFieldNumber = 2,
    };
    // uint64 uuid = 1;
    void clear_uuid();
    ::PROTOBUF_NAMESPACE_ID::uint64 uuid() const;
    void set_uuid(::PROTOBUF_NAMESPACE_ID::uint64 value);
    private:
    ::PROTOBUF_NAMESPACE_ID::uint64 _internal_uuid() const;
    void _internal_set_uuid(::PROTOBUF_NAMESPACE_ID::uint64 value);
    public:
  
    // bool is_connected = 2;
    void clear_is_connected();
    bool is_connected() const;
    void set_is_connected(bool value);
    private:
    bool _internal_is_connected() const;
    void _internal_set_is_connected(bool value);
    public:
  
    // @@protoc_insertion_point(class_scope:mavsdk.rpc.core.ConnectionState)
   private:
    class _Internal;
  
    template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
    typedef void InternalArenaConstructable_;
    typedef void DestructorSkippable_;
    ::PROTOBUF_NAMESPACE_ID::uint64 uuid_;
    bool is_connected_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    friend struct ::TableStruct_core_2fcore_2eproto;
  };
  // -------------------------------------------------------------------
  
  class PluginInfo PROTOBUF_FINAL :
      public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:mavsdk.rpc.core.PluginInfo) */ {
   public:
    inline PluginInfo() : PluginInfo(nullptr) {}
    virtual ~PluginInfo();
    explicit constexpr PluginInfo(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
  
    PluginInfo(const PluginInfo& from);
    PluginInfo(PluginInfo&& from) noexcept
      : PluginInfo() {
      *this = ::std::move(from);
    }
  
    inline PluginInfo& operator=(const PluginInfo& from) {
      CopyFrom(from);
      return *this;
    }
    inline PluginInfo& operator=(PluginInfo&& from) noexcept {
      if (GetArena() == from.GetArena()) {
        if (this != &from) InternalSwap(&from);
      } else {
        CopyFrom(from);
      }
      return *this;
    }
  
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
      return GetDescriptor();
    }
    static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
      return GetMetadataStatic().descriptor;
    }
    static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
      return GetMetadataStatic().reflection;
    }
    static const PluginInfo& default_instance() {
      return *internal_default_instance();
    }
    static inline const PluginInfo* internal_default_instance() {
      return reinterpret_cast<const PluginInfo*>(
                 &_PluginInfo_default_instance_);
    }
    static constexpr int kIndexInFileMessages =
      5;
  
    friend void swap(PluginInfo& a, PluginInfo& b) {
      a.Swap(&b);
    }
    inline void Swap(PluginInfo* other) {
      if (other == this) return;
      if (GetArena() == other->GetArena()) {
        InternalSwap(other);
      } else {
        ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
      }
    }
    void UnsafeArenaSwap(PluginInfo* other) {
      if (other == this) return;
      GOOGLE_DCHECK(GetArena() == other->GetArena());
      InternalSwap(other);
    }
  
    // implements Message ----------------------------------------------
  
    inline PluginInfo* New() const final {
      return CreateMaybeMessage<PluginInfo>(nullptr);
    }
  
    PluginInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
      return CreateMaybeMessage<PluginInfo>(arena);
    }
    void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
    void CopyFrom(const PluginInfo& from);
    void MergeFrom(const PluginInfo& from);
    PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
    bool IsInitialized() const final;
  
    size_t ByteSizeLong() const final;
    const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
    ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
        ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
    int GetCachedSize() const final { return _cached_size_.Get(); }
  
    private:
    inline void SharedCtor();
    inline void SharedDtor();
    void SetCachedSize(int size) const final;
    void InternalSwap(PluginInfo* other);
    friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
    static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
      return "mavsdk.rpc.core.PluginInfo";
    }
    protected:
    explicit PluginInfo(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    private:
    static void ArenaDtor(void* object);
    inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
    public:
  
    ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
    private:
    static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
      return ::descriptor_table_core_2fcore_2eproto_metadata_getter(kIndexInFileMessages);
    }
  
    public:
  
    // nested types ----------------------------------------------------
  
    // accessors -------------------------------------------------------
  
    enum : int {
      kNameFieldNumber = 1,
      kAddressFieldNumber = 2,
      kPortFieldNumber = 3,
    };
    // string name = 1;
    void clear_name();
    const std::string& name() const;
    void set_name(const std::string& value);
    void set_name(std::string&& value);
    void set_name(const char* value);
    void set_name(const char* value, size_t size);
    std::string* mutable_name();
    std::string* release_name();
    void set_allocated_name(std::string* name);
    private:
    const std::string& _internal_name() const;
    void _internal_set_name(const std::string& value);
    std::string* _internal_mutable_name();
    public:
  
    // string address = 2;
    void clear_address();
    const std::string& address() const;
    void set_address(const std::string& value);
    void set_address(std::string&& value);
    void set_address(const char* value);
    void set_address(const char* value, size_t size);
    std::string* mutable_address();
    std::string* release_address();
    void set_allocated_address(std::string* address);
    private:
    const std::string& _internal_address() const;
    void _internal_set_address(const std::string& value);
    std::string* _internal_mutable_address();
    public:
  
    // int32 port = 3;
    void clear_port();
    ::PROTOBUF_NAMESPACE_ID::int32 port() const;
    void set_port(::PROTOBUF_NAMESPACE_ID::int32 value);
    private:
    ::PROTOBUF_NAMESPACE_ID::int32 _internal_port() const;
    void _internal_set_port(::PROTOBUF_NAMESPACE_ID::int32 value);
    public:
  
    // @@protoc_insertion_point(class_scope:mavsdk.rpc.core.PluginInfo)
   private:
    class _Internal;
  
    template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
    typedef void InternalArenaConstructable_;
    typedef void DestructorSkippable_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr address_;
    ::PROTOBUF_NAMESPACE_ID::int32 port_;
    mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
    friend struct ::TableStruct_core_2fcore_2eproto;
  };
  // ===================================================================
  
  
  // ===================================================================
  
  #ifdef __GNUC__
    #pragma GCC diagnostic push
    #pragma GCC diagnostic ignored "-Wstrict-aliasing"
  #endif  // __GNUC__
  // SubscribeConnectionStateRequest
  
  // -------------------------------------------------------------------
  
  // ConnectionStateResponse
  
  // .mavsdk.rpc.core.ConnectionState connection_state = 1;
  inline bool ConnectionStateResponse::_internal_has_connection_state() const {
    return this != internal_default_instance() && connection_state_ != nullptr;
  }
  inline bool ConnectionStateResponse::has_connection_state() const {
    return _internal_has_connection_state();
  }
  inline void ConnectionStateResponse::clear_connection_state() {
    if (GetArena() == nullptr && connection_state_ != nullptr) {
      delete connection_state_;
    }
    connection_state_ = nullptr;
  }
  inline const ::mavsdk::rpc::core::ConnectionState& ConnectionStateResponse::_internal_connection_state() const {
    const ::mavsdk::rpc::core::ConnectionState* p = connection_state_;
    return p != nullptr ? *p : reinterpret_cast<const ::mavsdk::rpc::core::ConnectionState&>(
        ::mavsdk::rpc::core::_ConnectionState_default_instance_);
  }
  inline const ::mavsdk::rpc::core::ConnectionState& ConnectionStateResponse::connection_state() const {
    // @@protoc_insertion_point(field_get:mavsdk.rpc.core.ConnectionStateResponse.connection_state)
    return _internal_connection_state();
  }
  inline void ConnectionStateResponse::unsafe_arena_set_allocated_connection_state(
      ::mavsdk::rpc::core::ConnectionState* connection_state) {
    if (GetArena() == nullptr) {
      delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(connection_state_);
    }
    connection_state_ = connection_state;
    if (connection_state) {
      
    } else {
      
    }
    // @@protoc_insertion_point(field_unsafe_arena_set_allocated:mavsdk.rpc.core.ConnectionStateResponse.connection_state)
  }
  inline ::mavsdk::rpc::core::ConnectionState* ConnectionStateResponse::release_connection_state() {
    
    ::mavsdk::rpc::core::ConnectionState* temp = connection_state_;
    connection_state_ = nullptr;
    if (GetArena() != nullptr) {
      temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
    }
    return temp;
  }
  inline ::mavsdk::rpc::core::ConnectionState* ConnectionStateResponse::unsafe_arena_release_connection_state() {
    // @@protoc_insertion_point(field_release:mavsdk.rpc.core.ConnectionStateResponse.connection_state)
    
    ::mavsdk::rpc::core::ConnectionState* temp = connection_state_;
    connection_state_ = nullptr;
    return temp;
  }
  inline ::mavsdk::rpc::core::ConnectionState* ConnectionStateResponse::_internal_mutable_connection_state() {
    
    if (connection_state_ == nullptr) {
      auto* p = CreateMaybeMessage<::mavsdk::rpc::core::ConnectionState>(GetArena());
      connection_state_ = p;
    }
    return connection_state_;
  }
  inline ::mavsdk::rpc::core::ConnectionState* ConnectionStateResponse::mutable_connection_state() {
    // @@protoc_insertion_point(field_mutable:mavsdk.rpc.core.ConnectionStateResponse.connection_state)
    return _internal_mutable_connection_state();
  }
  inline void ConnectionStateResponse::set_allocated_connection_state(::mavsdk::rpc::core::ConnectionState* connection_state) {
    ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
    if (message_arena == nullptr) {
      delete connection_state_;
    }
    if (connection_state) {
      ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
        ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(connection_state);
      if (message_arena != submessage_arena) {
        connection_state = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
            message_arena, connection_state, submessage_arena);
      }
      
    } else {
      
    }
    connection_state_ = connection_state;
    // @@protoc_insertion_point(field_set_allocated:mavsdk.rpc.core.ConnectionStateResponse.connection_state)
  }
  
  // -------------------------------------------------------------------
  
  // ListRunningPluginsRequest
  
  // -------------------------------------------------------------------
  
  // ListRunningPluginsResponse
  
  // repeated .mavsdk.rpc.core.PluginInfo plugin_info = 1;
  inline int ListRunningPluginsResponse::_internal_plugin_info_size() const {
    return plugin_info_.size();
  }
  inline int ListRunningPluginsResponse::plugin_info_size() const {
    return _internal_plugin_info_size();
  }
  inline void ListRunningPluginsResponse::clear_plugin_info() {
    plugin_info_.Clear();
  }
  inline ::mavsdk::rpc::core::PluginInfo* ListRunningPluginsResponse::mutable_plugin_info(int index) {
    // @@protoc_insertion_point(field_mutable:mavsdk.rpc.core.ListRunningPluginsResponse.plugin_info)
    return plugin_info_.Mutable(index);
  }
  inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::mavsdk::rpc::core::PluginInfo >*
  ListRunningPluginsResponse::mutable_plugin_info() {
    // @@protoc_insertion_point(field_mutable_list:mavsdk.rpc.core.ListRunningPluginsResponse.plugin_info)
    return &plugin_info_;
  }
  inline const ::mavsdk::rpc::core::PluginInfo& ListRunningPluginsResponse::_internal_plugin_info(int index) const {
    return plugin_info_.Get(index);
  }
  inline const ::mavsdk::rpc::core::PluginInfo& ListRunningPluginsResponse::plugin_info(int index) const {
    // @@protoc_insertion_point(field_get:mavsdk.rpc.core.ListRunningPluginsResponse.plugin_info)
    return _internal_plugin_info(index);
  }
  inline ::mavsdk::rpc::core::PluginInfo* ListRunningPluginsResponse::_internal_add_plugin_info() {
    return plugin_info_.Add();
  }
  inline ::mavsdk::rpc::core::PluginInfo* ListRunningPluginsResponse::add_plugin_info() {
    // @@protoc_insertion_point(field_add:mavsdk.rpc.core.ListRunningPluginsResponse.plugin_info)
    return _internal_add_plugin_info();
  }
  inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::mavsdk::rpc::core::PluginInfo >&
  ListRunningPluginsResponse::plugin_info() const {
    // @@protoc_insertion_point(field_list:mavsdk.rpc.core.ListRunningPluginsResponse.plugin_info)
    return plugin_info_;
  }
  
  // -------------------------------------------------------------------
  
  // ConnectionState
  
  // uint64 uuid = 1;
  inline void ConnectionState::clear_uuid() {
    uuid_ = PROTOBUF_ULONGLONG(0);
  }
  inline ::PROTOBUF_NAMESPACE_ID::uint64 ConnectionState::_internal_uuid() const {
    return uuid_;
  }
  inline ::PROTOBUF_NAMESPACE_ID::uint64 ConnectionState::uuid() const {
    // @@protoc_insertion_point(field_get:mavsdk.rpc.core.ConnectionState.uuid)
    return _internal_uuid();
  }
  inline void ConnectionState::_internal_set_uuid(::PROTOBUF_NAMESPACE_ID::uint64 value) {
    
    uuid_ = value;
  }
  inline void ConnectionState::set_uuid(::PROTOBUF_NAMESPACE_ID::uint64 value) {
    _internal_set_uuid(value);
    // @@protoc_insertion_point(field_set:mavsdk.rpc.core.ConnectionState.uuid)
  }
  
  // bool is_connected = 2;
  inline void ConnectionState::clear_is_connected() {
    is_connected_ = false;
  }
  inline bool ConnectionState::_internal_is_connected() const {
    return is_connected_;
  }
  inline bool ConnectionState::is_connected() const {
    // @@protoc_insertion_point(field_get:mavsdk.rpc.core.ConnectionState.is_connected)
    return _internal_is_connected();
  }
  inline void ConnectionState::_internal_set_is_connected(bool value) {
    
    is_connected_ = value;
  }
  inline void ConnectionState::set_is_connected(bool value) {
    _internal_set_is_connected(value);
    // @@protoc_insertion_point(field_set:mavsdk.rpc.core.ConnectionState.is_connected)
  }
  
  // -------------------------------------------------------------------
  
  // PluginInfo
  
  // string name = 1;
  inline void PluginInfo::clear_name() {
    name_.ClearToEmpty();
  }
  inline const std::string& PluginInfo::name() const {
    // @@protoc_insertion_point(field_get:mavsdk.rpc.core.PluginInfo.name)
    return _internal_name();
  }
  inline void PluginInfo::set_name(const std::string& value) {
    _internal_set_name(value);
    // @@protoc_insertion_point(field_set:mavsdk.rpc.core.PluginInfo.name)
  }
  inline std::string* PluginInfo::mutable_name() {
    // @@protoc_insertion_point(field_mutable:mavsdk.rpc.core.PluginInfo.name)
    return _internal_mutable_name();
  }
  inline const std::string& PluginInfo::_internal_name() const {
    return name_.Get();
  }
  inline void PluginInfo::_internal_set_name(const std::string& value) {
    
    name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArena());
  }
  inline void PluginInfo::set_name(std::string&& value) {
    
    name_.Set(
      ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::move(value), GetArena());
    // @@protoc_insertion_point(field_set_rvalue:mavsdk.rpc.core.PluginInfo.name)
  }
  inline void PluginInfo::set_name(const char* value) {
    GOOGLE_DCHECK(value != nullptr);
    
    name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::string(value), GetArena());
    // @@protoc_insertion_point(field_set_char:mavsdk.rpc.core.PluginInfo.name)
  }
  inline void PluginInfo::set_name(const char* value,
      size_t size) {
    
    name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::string(
        reinterpret_cast<const char*>(value), size), GetArena());
    // @@protoc_insertion_point(field_set_pointer:mavsdk.rpc.core.PluginInfo.name)
  }
  inline std::string* PluginInfo::_internal_mutable_name() {
    
    return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArena());
  }
  inline std::string* PluginInfo::release_name() {
    // @@protoc_insertion_point(field_release:mavsdk.rpc.core.PluginInfo.name)
    return name_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
  }
  inline void PluginInfo::set_allocated_name(std::string* name) {
    if (name != nullptr) {
      
    } else {
      
    }
    name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name,
        GetArena());
    // @@protoc_insertion_point(field_set_allocated:mavsdk.rpc.core.PluginInfo.name)
  }
  
  // string address = 2;
  inline void PluginInfo::clear_address() {
    address_.ClearToEmpty();
  }
  inline const std::string& PluginInfo::address() const {
    // @@protoc_insertion_point(field_get:mavsdk.rpc.core.PluginInfo.address)
    return _internal_address();
  }
  inline void PluginInfo::set_address(const std::string& value) {
    _internal_set_address(value);
    // @@protoc_insertion_point(field_set:mavsdk.rpc.core.PluginInfo.address)
  }
  inline std::string* PluginInfo::mutable_address() {
    // @@protoc_insertion_point(field_mutable:mavsdk.rpc.core.PluginInfo.address)
    return _internal_mutable_address();
  }
  inline const std::string& PluginInfo::_internal_address() const {
    return address_.Get();
  }
  inline void PluginInfo::_internal_set_address(const std::string& value) {
    
    address_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArena());
  }
  inline void PluginInfo::set_address(std::string&& value) {
    
    address_.Set(
      ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::move(value), GetArena());
    // @@protoc_insertion_point(field_set_rvalue:mavsdk.rpc.core.PluginInfo.address)
  }
  inline void PluginInfo::set_address(const char* value) {
    GOOGLE_DCHECK(value != nullptr);
    
    address_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::string(value), GetArena());
    // @@protoc_insertion_point(field_set_char:mavsdk.rpc.core.PluginInfo.address)
  }
  inline void PluginInfo::set_address(const char* value,
      size_t size) {
    
    address_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, ::std::string(
        reinterpret_cast<const char*>(value), size), GetArena());
    // @@protoc_insertion_point(field_set_pointer:mavsdk.rpc.core.PluginInfo.address)
  }
  inline std::string* PluginInfo::_internal_mutable_address() {
    
    return address_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArena());
  }
  inline std::string* PluginInfo::release_address() {
    // @@protoc_insertion_point(field_release:mavsdk.rpc.core.PluginInfo.address)
    return address_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
  }
  inline void PluginInfo::set_allocated_address(std::string* address) {
    if (address != nullptr) {
      
    } else {
      
    }
    address_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), address,
        GetArena());
    // @@protoc_insertion_point(field_set_allocated:mavsdk.rpc.core.PluginInfo.address)
  }
  
  // int32 port = 3;
  inline void PluginInfo::clear_port() {
    port_ = 0;
  }
  inline ::PROTOBUF_NAMESPACE_ID::int32 PluginInfo::_internal_port() const {
    return port_;
  }
  inline ::PROTOBUF_NAMESPACE_ID::int32 PluginInfo::port() const {
    // @@protoc_insertion_point(field_get:mavsdk.rpc.core.PluginInfo.port)
    return _internal_port();
  }
  inline void PluginInfo::_internal_set_port(::PROTOBUF_NAMESPACE_ID::int32 value) {
    
    port_ = value;
  }
  inline void PluginInfo::set_port(::PROTOBUF_NAMESPACE_ID::int32 value) {
    _internal_set_port(value);
    // @@protoc_insertion_point(field_set:mavsdk.rpc.core.PluginInfo.port)
  }
  
  #ifdef __GNUC__
    #pragma GCC diagnostic pop
  #endif  // __GNUC__
  // -------------------------------------------------------------------
  
  // -------------------------------------------------------------------
  
  // -------------------------------------------------------------------
  
  // -------------------------------------------------------------------
  
  // -------------------------------------------------------------------
  
  
  // @@protoc_insertion_point(namespace_scope)
  
  }  // namespace core
  }  // namespace rpc
  }  // namespace mavsdk
  
  // @@protoc_insertion_point(global_scope)
  
  #include <google/protobuf/port_undef.inc>
  #endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_core_2fcore_2eproto
  