2016-02-17 21:25:08 -04:00
|
|
|
#pragma once
|
2015-10-10 20:51:37 -03:00
|
|
|
|
|
|
|
/// @file AC_InputManager.h
|
|
|
|
/// @brief Pilot manual control input library
|
|
|
|
|
|
|
|
#include <AP_Common/AP_Common.h>
|
|
|
|
#include <AP_Param/AP_Param.h>
|
|
|
|
#include <AP_Math/AP_Math.h>
|
|
|
|
|
|
|
|
/// @class AC_InputManager
|
|
|
|
/// @brief Class managing the pilot's control inputs
|
|
|
|
class AC_InputManager{
|
|
|
|
public:
|
2017-12-12 21:06:10 -04:00
|
|
|
AC_InputManager() {
|
|
|
|
// setup parameter defaults
|
|
|
|
AP_Param::setup_object_defaults(this, var_info);
|
|
|
|
}
|
2017-08-29 21:18:26 -03:00
|
|
|
|
|
|
|
/* Do not allow copies */
|
2022-09-30 06:50:43 -03:00
|
|
|
CLASS_NO_COPY(AC_InputManager);
|
2015-10-10 20:51:37 -03:00
|
|
|
|
|
|
|
static const struct AP_Param::GroupInfo var_info[];
|
2017-08-26 09:59:26 -03:00
|
|
|
void set_loop_rate(uint16_t loop_rate) { _loop_rate = loop_rate; }
|
2015-10-10 20:51:37 -03:00
|
|
|
|
|
|
|
protected:
|
|
|
|
// internal variables
|
|
|
|
uint16_t _loop_rate; // rate at which output() function is called (normally 400hz)
|
|
|
|
|
|
|
|
};
|