src
scenarios.hpp
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2023 RaccoonLab.
3
*
4
* This program is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation, version 3.
7
*
8
* This program is distributed in the hope that it will be useful, but
9
* WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
* General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*
16
* Author: Dmitry Ponomarev <ponomarevda96@gmail.com>
17
*/
18
19
#ifndef UAV_DYNAMICS_SCENARIOS_HPP
20
#define UAV_DYNAMICS_SCENARIOS_HPP
21
22
#include <
ros/ros.h
>
23
#include <std_msgs/UInt8.h>
24
#include <
actuators.hpp
>
25
#include <
sensors.hpp
>
26
27
enum class
Scenario
{
28
BARO_DISABLE
= 0,
29
BARO_ENABLE
,
30
31
DIFFERENTIAL_PRESSURE_DISABLE
,
32
DIFFERENTIAL_PRESSURE_ENABLE
,
33
34
GNSS_DISABLE
,
35
GNSS_ENABLE
,
36
37
ICE_START_STALL_EMULATION
,
38
ICE_STOP_STALL_EMULATION
,
39
40
MAG_DISABLE
,
41
MAG_ENABLE
,
42
43
ESC_FEEDBACK_DISABLE
,
44
ESC_FEEDBACK_ENABLE
,
45
};
46
47
struct
ScenarioManager
{
48
ScenarioManager
(
ros::NodeHandle
& node,
Actuators
& actuators,
Sensors
& sensors) :
49
_node
(node),
_actuators
(actuators),
_sensors
(sensors) {}
50
void
init
();
51
private
:
52
ros::Subscriber
_scenarioSub
;
53
ros::NodeHandle
&
_node
;
54
Actuators
&
_actuators
;
55
Sensors
&
_sensors
;
56
57
void
scenarioCallback
(std_msgs::UInt8 msg);
58
};
59
60
#endif // UAV_DYNAMICS_SCENARIOS_HPP
Scenario::GNSS_DISABLE
@ GNSS_DISABLE
ScenarioManager::_sensors
Sensors & _sensors
Definition:
scenarios.hpp:55
actuators.hpp
sensors.hpp
Scenario::BARO_DISABLE
@ BARO_DISABLE
Scenario::MAG_ENABLE
@ MAG_ENABLE
ScenarioManager::init
void init()
Definition:
scenarios.cpp:21
ros.h
Scenario::ICE_STOP_STALL_EMULATION
@ ICE_STOP_STALL_EMULATION
Scenario::ICE_START_STALL_EMULATION
@ ICE_START_STALL_EMULATION
ScenarioManager::ScenarioManager
ScenarioManager(ros::NodeHandle &node, Actuators &actuators, Sensors &sensors)
Definition:
scenarios.hpp:48
Scenario::GNSS_ENABLE
@ GNSS_ENABLE
Actuators
Definition:
actuators.hpp:33
ScenarioManager::_scenarioSub
ros::Subscriber _scenarioSub
Definition:
scenarios.hpp:52
Scenario::ESC_FEEDBACK_ENABLE
@ ESC_FEEDBACK_ENABLE
ScenarioManager::scenarioCallback
void scenarioCallback(std_msgs::UInt8 msg)
Definition:
scenarios.cpp:25
Sensors
Definition:
sensors.hpp:37
Scenario::DIFFERENTIAL_PRESSURE_DISABLE
@ DIFFERENTIAL_PRESSURE_DISABLE
ScenarioManager::_actuators
Actuators & _actuators
Definition:
scenarios.hpp:54
Scenario::BARO_ENABLE
@ BARO_ENABLE
ScenarioManager
Definition:
scenarios.hpp:47
Scenario::ESC_FEEDBACK_DISABLE
@ ESC_FEEDBACK_DISABLE
Scenario
Scenario
Definition:
scenarios.hpp:27
ScenarioManager::_node
ros::NodeHandle & _node
Definition:
scenarios.hpp:53
ros::NodeHandle
ros::Subscriber
Scenario::MAG_DISABLE
@ MAG_DISABLE
Scenario::DIFFERENTIAL_PRESSURE_ENABLE
@ DIFFERENTIAL_PRESSURE_ENABLE
inno_vtol_dynamics
Author(s): Roman Fedorenko, Dmitry Ponomarev, Ezra Tal, Winter Guerra
autogenerated on Mon Dec 9 2024 03:13:35