2
0
mirror of https://github.com/team2059/Dent synced 2024-12-18 20:52:29 -05:00
dent/OI.h

67 lines
1.6 KiB
C++

#ifndef OI_H
#define OI_H
#include "WPILib.h"
#include "Commands/Command.h"
/**
* @brief Controls the robot with joysticks
*/
class OI{
private:
Joystick *leftStick, //<! Left joystick
*rightStick; //<! Right joystick
public:
/**
* @brief Constructs OI
*/
OI();
Command *raise, //<! Raise command
*lower, //<! Lower command
*binLower, //<! BinLower command
*binRaise; //<! BinRaise command
/**
* @brief Gets the value of a throttle on the left controller
*
* @param stick The stick to get. Can be "left" or "right"
* @param axis The axis to get. Can be "x", "y", or "trigger"
*
* @return
*/
float GetLeftAxis(std::string stick, std::string axis);
/**
* @brief Gets the state of a button on the left controller
*
* @param button The button to get. Can be "x", "y", "a", "b", "lb", "rb", "back", "start", "lpress", "or" "rpress"
*
* @return True if the button is pressed
*/
bool GetLeftButton(std::string button);
/**
* @brief Returns the right joystick
*
* @return The right joystick
*/
Joystick* GetRightStick();
/**
* @brief Returns the left joystick
*
* @return The left joystick
*/
Joystick* GetLeftStick();
/**
* @brief Returns the left joystick throttle
*
* @return The left joystick throttle
*/
double GetLeftThrottle();
/**
* @brief Returns the right joystick throttle
*
* @return The right joystick throttle
*/
double GetRightThrottle();
};
#endif
// vim: ts=2:sw=2:et