5 #ifndef PROJECT_GAMEPADCOMMAND_H 6 #define PROJECT_GAMEPADCOMMAND_H 10 #include "gamepad_lcmt.hpp" 24 leftTriggerButton =
false;
25 rightTriggerButton =
false;
32 leftStickButton =
false;
33 rightStickButton =
false;
35 leftTriggerAnalog = 0;
36 rightTriggerAnalog = 0;
41 void set(
const gamepad_lcmt* lcmt) {
42 leftBumper = lcmt->leftBumper;
43 rightBumper = lcmt->rightBumper;
44 leftTriggerButton = lcmt->leftTriggerButton;
45 rightTriggerButton = lcmt->rightTriggerButton;
52 leftStickButton = lcmt->leftStickButton;
53 rightStickButton = lcmt->rightStickButton;
54 leftTriggerAnalog = lcmt->leftTriggerAnalog;
55 rightTriggerAnalog = lcmt->rightTriggerAnalog;
56 for (
int i = 0; i < 2; i++) {
57 leftStickAnalog[i] = lcmt->leftStickAnalog[i];
58 rightStickAnalog[i] = lcmt->rightStickAnalog[i];
62 void get(gamepad_lcmt* lcmt) {
77 for (
int i = 0; i < 2; i++) {
78 lcmt->leftStickAnalog[i] = leftStickAnalog[i];
79 lcmt->rightStickAnalog[i] = rightStickAnalog[i];
90 leftTriggerAnalog =
deadband(leftTriggerAnalog, f);
91 rightTriggerAnalog =
deadband(rightTriggerAnalog, f);
96 "Result:\nleftBumper: " +
boolToString(leftBumper) +
"\n" +
98 "leftTriggerButton: " +
boolToString(leftTriggerButton) +
"\n" +
99 "rightTriggerButton: " +
boolToString(rightTriggerButton) +
"\n" +
103 "leftStickButton: " +
boolToString(leftStickButton) +
"\n" +
104 "rightStickButton: " +
boolToString(rightStickButton) +
"\n" +
105 "leftTriggerAnalog: " + std::to_string(leftTriggerAnalog) +
"\n" +
106 "rightTriggerAnalog: " + std::to_string(rightTriggerAnalog) +
"\n" +
107 "leftStickAnalog: " +
eigenToString(leftStickAnalog) +
"\n" +
108 "rightStickAnalog: " +
eigenToString(rightStickAnalog) +
"\n";
113 #endif // PROJECT_DRIVERCOMMAND_H void applyDeadband(float f)
Vec2< float > rightStickAnalog
std::string eigenToString(Eigen::MatrixBase< T > &value)
typename Eigen::Matrix< T, 2, 1 > Vec2
Vec2< float > leftStickAnalog
void eigenDeadband(Eigen::MatrixBase< T > &v, typename T::Scalar band)
static std::string boolToString(bool b)
MX f(const MX &x, const MX &u)