Easy Navigation
Loading...
Searching...
No Matches
DummyController.hpp
Go to the documentation of this file.
1// Copyright 2025 Intelligent Robotics Lab
2//
3// This file is part of the project Easy Navigation (EasyNav in short)
4// licensed under the GNU General Public License v3.0.
5// See <http://www.gnu.org/licenses/> for details.
6//
7// Easy Navigation program is free software: you can redistribute it and/or modify
8// it under the terms of the GNU General Public License as published by
9// the Free Software Foundation, either version 3 of the License, or
10// (at your option) any later version.
11//
12// This program is distributed in the hope that it will be useful,
13// but WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15// GNU General Public License for more details.
16//
17// You should have received a copy of the GNU General Public License
18// along with this program. If not, see <http://www.gnu.org/licenses/>.
19
22
23#ifndef EASYNAV_CONTROLLER__DUMMYCONTROLLER_HPP_
24#define EASYNAV_CONTROLLER__DUMMYCONTROLLER_HPP_
25
26#include <expected>
27
28#include "geometry_msgs/msg/twist_stamped.hpp"
29
30#include "easynav_core/ControllerMethodBase.hpp"
31
32namespace easynav
33{
34
42class DummyController : public easynav::ControllerMethodBase
43{
44public:
45 DummyController() = default;
46 ~DummyController() = default;
47
58 virtual std::expected<void, std::string> on_initialize() override;
59
67 virtual void update_rt(NavState & nav_state) override;
68
69private:
73 geometry_msgs::msg::TwistStamped cmd_vel_;
74
75 double cycle_time_rt_ {0.0};
76 double cycle_time_nort_ {0.0};
77};
78
79} // namespace easynav
80
81#endif // EASYNAV_CONTROLLER__DUMMYCONTROLLER_HPP_
virtual void update_rt(NavState &nav_state) override
Run the control method and update the control command.
Definition DummyController.cpp:54
virtual std::expected< void, std::string > on_initialize() override
Initializes the control method plugin.
Definition DummyController.cpp:31
A generic, type-safe, lock-free blackboard to hold runtime state.
Definition NavState.hpp:62
Definition RTTFBuffer.hpp:30