PX4 ROS 2 Interface Library
Library to interface with PX4 from a companion computer using ROS 2
Loading...
Searching...
No Matches
navigation_interface_base.hpp
1/****************************************************************************
2 * Copyright (c) 2023 PX4 Development Team.
3 * SPDX-License-Identifier: BSD-3-Clause
4 ****************************************************************************/
5
6#pragma once
7
8#include <px4_ros2/common/context.hpp>
9#include <px4_ros2/common/exception.hpp>
10
11namespace px4_ros2 {
12
17 public:
18 explicit NavigationInterfaceInvalidArgument(const std::string& message)
19 : Exception("PX4 ROS2 navigation interface: invalid argument: " + message)
20 {
21 }
22};
23
28 public:
29 explicit PositionMeasurementInterfaceBase(rclcpp::Node& node,
30 std::string topic_namespace_prefix = "")
31 : Context(node, std::move(topic_namespace_prefix)), _node(node)
32 {
33 }
34 virtual ~PositionMeasurementInterfaceBase() = default;
35
40 bool doRegister() { return true; }
41
42 protected:
43 rclcpp::Node& _node;
44};
45
46} // namespace px4_ros2
Definition context.hpp:18
Definition exception.hpp:14
Thrown to report invalid arguments to measurement interface.
Definition navigation_interface_base.hpp:16
Base class for position measurement interface.
Definition navigation_interface_base.hpp:27
bool doRegister()
Definition navigation_interface_base.hpp:40