7 #include <parsernode/common.h>
14 template <
class LogicStateMachineT>
20 VLOG(1) <<
"Aborting UAV Controllers";
34 template <
class LogicStateMachineT>
43 bool run(
UAVSystem &robot_system, LogicStateMachineT &logic_state_machine) {
44 parsernode::common::quaddata data = robot_system.
getUAVData();
48 VLOG(1) <<
"Completed Landing";
49 logic_state_machine.process_event(
Completed());
61 template <
class LogicStateMachineT>
70 bool run(
UAVSystem &robot_system, LogicStateMachineT &logic_state_machine) {
71 parsernode::common::quaddata data = robot_system.
getUAVData();
73 if (!data.rc_sdk_control_switch) {
74 VLOG(1) <<
"Switching to Manual UAV state";
87 template <
class LogicStateMachineT>
95 template <
class LogicStateMachineT>
Base state for all states in logic state machine.
Definition: base_state.h:24
void abortController(HardwareType hardware_type)
Remove active controller for given hardware type.
Definition: base_robot_system.h:126
Internal action to switch to manual uav state.
Definition: land_functors.h:62
Completed Event for transition from for example Landing to Landed etc.
Definition: completed_event.h:6
Internal action that returns whether it processed an event.
Definition: base_functors.h:208
Action functor that does not require the event triggering it.
Definition: base_functors.h:113
Owns, initializes, and facilitates communication between different hardware/software components...
Definition: uav_system.h:21
Internal action to figure out when landing is complete.
Definition: land_functors.h:35
bool run(UAVSystem &robot_system, LogicStateMachineT &logic_state_machine)
Internal function to check when landing is complete.
Definition: land_functors.h:43
parsernode::common::quaddata getUAVData() const
Get sensor data from UAV.
Definition: uav_system.h:109
void land()
Public API call to land.
Definition: uav_system.h:130
void run(UAVSystem &robot_system)
Override this run function for different sub classes. This function performs the logic checking for e...
Definition: land_functors.h:17
UAVSystemConfig getConfiguration()
Get system configuration.
Definition: uav_system.h:192
Transition action when starting to land.
Definition: land_functors.h:15
bool run(UAVSystem &robot_system, LogicStateMachineT &logic_state_machine)
Internal function to switch to manual uav state.
Definition: land_functors.h:70
Event to get into manual control state when UAV leaves SDK mode and enters Manual mode...
Definition: manual_control_event.h:8