WPILibC++  unspecified
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Pages
frc::GenericHID Class Referenceabstract

GenericHID Interface. More...

#include <GenericHID.h>

Inheritance diagram for frc::GenericHID:
frc::GamepadBase frc::JoystickBase frc::XboxController frc::Joystick

Public Types

enum  RumbleType { kLeftRumble, kRightRumble }
 
enum  HIDType {
  kUnknown = -1, kXInputUnknown = 0, kXInputGamepad = 1, kXInputWheel = 2,
  kXInputArcadeStick = 3, kXInputFlightStick = 4, kXInputDancePad = 5, kXInputGuitar = 6,
  kXInputGuitar2 = 7, kXInputDrumKit = 8, kXInputGuitar3 = 11, kXInputArcadePad = 19,
  kHIDJoystick = 20, kHIDGamepad = 21, kHIDDriving = 22, kHIDFlight = 23,
  kHID1stPerson = 24
}
 
enum  JoystickHand { kLeftHand = 0, kRightHand = 1 }
 

Public Member Functions

 GenericHID (int port)
 
virtual double GetX (JoystickHand hand=kRightHand) const =0
 
virtual double GetY (JoystickHand hand=kRightHand) const =0
 
virtual double GetRawAxis (int axis) const
 Get the value of the axis. More...
 
bool GetRawButton (int button) const
 Get the button value (starting at button 1) More...
 
int GetPOV (int pov=0) const
 Get the angle in degrees of a POV on the HID. More...
 
int GetPOVCount () const
 Get the number of POVs for the HID. More...
 
int GetPort () const
 Get the port number of the HID. More...
 
GenericHID::HIDType GetType () const
 Get the type of the HID. More...
 
std::string GetName () const
 Get the name of the HID. More...
 
void SetOutput (int outputNumber, bool value)
 Set a single HID output value for the HID. More...
 
void SetOutputs (int value)
 Set all output values for the HID. More...
 
void SetRumble (RumbleType type, double value)
 Set the rumble output for the HID. More...
 

Detailed Description

GenericHID Interface.

Member Function Documentation

std::string GenericHID::GetName ( ) const

Get the name of the HID.

Returns
the name of the HID.
int GenericHID::GetPort ( ) const

Get the port number of the HID.

Returns
The port number of the HID.
int GenericHID::GetPOV ( int  pov = 0) const

Get the angle in degrees of a POV on the HID.

The POV angles start at 0 in the up direction, and increase clockwise (e.g. right is 90, upper-left is 315).

Parameters
povThe index of the POV to read (starting at 0)
Returns
the angle of the POV in degrees, or -1 if the POV is not pressed.
int GenericHID::GetPOVCount ( ) const

Get the number of POVs for the HID.

Returns
the number of POVs for the current HID
double GenericHID::GetRawAxis ( int  axis) const
virtual

Get the value of the axis.

Parameters
axisThe axis to read, starting at 0.
Returns
The value of the axis.
bool GenericHID::GetRawButton ( int  button) const

Get the button value (starting at button 1)

The buttons are returned in a single 16 bit value with one bit representing the state of each button. The appropriate button is returned as a boolean value.

Parameters
buttonThe button number to be read (starting at 1)
Returns
The state of the button.
GenericHID::HIDType GenericHID::GetType ( ) const

Get the type of the HID.

Returns
the type of the HID.
void GenericHID::SetOutput ( int  outputNumber,
bool  value 
)

Set a single HID output value for the HID.

Parameters
outputNumberThe index of the output to set (1-32)
valueThe value to set the output to
void GenericHID::SetOutputs ( int  value)

Set all output values for the HID.

Parameters
valueThe 32 bit output value (1 bit for each output)
void GenericHID::SetRumble ( RumbleType  type,
double  value 
)

Set the rumble output for the HID.

The DS currently supports 2 rumble values, left rumble and right rumble.

Parameters
typeWhich rumble value to set
valueThe normalized value (0 to 1) to set the rumble to

The documentation for this class was generated from the following files: