Package edu.wpi.first.hal
Class HAL
- java.lang.Object
-
- edu.wpi.first.hal.JNIWrapper
-
- edu.wpi.first.hal.HAL
-
public final class HAL extends JNIWrapper
JNI Wrapper for HAL
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
HAL.SimPeriodicAfterCallback
static class
HAL.SimPeriodicBeforeCallback
-
Nested classes/interfaces inherited from class edu.wpi.first.hal.JNIWrapper
JNIWrapper.Helper
-
-
Field Summary
Fields Modifier and Type Field Description static int
kMaxJoystickAxes
static int
kMaxJoystickPOVs
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
exitMain()
static AllianceStationID
getAllianceStation()
static boolean
getBrownedOut()
static void
getControlWord(ControlWord controlWord)
static short
getJoystickAxes(byte joystickNum, float[] axesArray)
static int
getJoystickAxisType(byte joystickNum, byte axis)
static int
getJoystickButtons(byte joystickNum, ByteBuffer count)
static int
getJoystickIsXbox(byte joystickNum)
static String
getJoystickName(byte joystickNum)
static short
getJoystickPOVs(byte joystickNum, short[] povsArray)
static int
getJoystickType(byte joystickNum)
static int
getMatchInfo(MatchInfoData info)
static double
getMatchTime()
static int
getPort(byte channel)
static int
getPortWithModule(byte module, byte channel)
static boolean
getSystemActive()
static boolean
hasMain()
static boolean
initialize(int timeout, int mode)
static boolean
isNewControlData()
static int
nativeGetControlWord()
static void
observeUserProgramAutonomous()
static void
observeUserProgramDisabled()
static void
observeUserProgramStarting()
static void
observeUserProgramTeleop()
static void
observeUserProgramTest()
static HAL.SimPeriodicAfterCallback
registerSimPeriodicAfterCallback(Runnable r)
Registers a callback to be run by IterativeRobotBase after the user's simulationPeriodic code.static HAL.SimPeriodicBeforeCallback
registerSimPeriodicBeforeCallback(Runnable r)
Registers a callback to be run by IterativeRobotBase prior to the user's simulationPeriodic code.static void
releaseDSMutex()
static void
report(int resource, int instanceNumber)
static void
report(int resource, int instanceNumber, int context)
static int
report(int resource, int instanceNumber, int context, String feature)
Report the usage of a resource of interest.static void
runMain()
static int
sendConsoleLine(String line)
static int
sendError(boolean isError, int errorCode, boolean isLVCode, String details, String location, String callStack, boolean printMsg)
static int
setJoystickOutputs(byte joystickNum, int outputs, short leftRumble, short rightRumble)
static void
shutdown()
static void
simPeriodicAfter()
Runs SimPeriodicAfter callbacks.static void
simPeriodicBefore()
Runs SimPeriodicBefore callbacks.static void
waitForDSData()
static boolean
waitForDSDataTimeout(double timeout)
-
Methods inherited from class edu.wpi.first.hal.JNIWrapper
forceLoad, suppressUnused
-
-
-
-
Field Detail
-
kMaxJoystickAxes
public static final int kMaxJoystickAxes
- See Also:
- Constant Field Values
-
kMaxJoystickPOVs
public static final int kMaxJoystickPOVs
- See Also:
- Constant Field Values
-
-
Method Detail
-
waitForDSData
public static void waitForDSData()
-
initialize
public static boolean initialize(int timeout, int mode)
-
shutdown
public static void shutdown()
-
hasMain
public static boolean hasMain()
-
runMain
public static void runMain()
-
exitMain
public static void exitMain()
-
registerSimPeriodicBeforeCallback
public static HAL.SimPeriodicBeforeCallback registerSimPeriodicBeforeCallback(Runnable r)
Registers a callback to be run by IterativeRobotBase prior to the user's simulationPeriodic code.- Parameters:
r
- runnable- Returns:
- Callback object (must be retained for callback to stay active).
-
simPeriodicBefore
public static void simPeriodicBefore()
Runs SimPeriodicBefore callbacks. IterativeRobotBase calls this prior to the user's simulationPeriodic code.
-
registerSimPeriodicAfterCallback
public static HAL.SimPeriodicAfterCallback registerSimPeriodicAfterCallback(Runnable r)
Registers a callback to be run by IterativeRobotBase after the user's simulationPeriodic code.- Parameters:
r
- runnable- Returns:
- Callback object (must be retained for callback to stay active).
-
simPeriodicAfter
public static void simPeriodicAfter()
Runs SimPeriodicAfter callbacks. IterativeRobotBase calls this after the user's simulationPeriodic code.
-
observeUserProgramStarting
public static void observeUserProgramStarting()
-
observeUserProgramDisabled
public static void observeUserProgramDisabled()
-
observeUserProgramAutonomous
public static void observeUserProgramAutonomous()
-
observeUserProgramTeleop
public static void observeUserProgramTeleop()
-
observeUserProgramTest
public static void observeUserProgramTest()
-
report
public static void report(int resource, int instanceNumber)
-
report
public static void report(int resource, int instanceNumber, int context)
-
report
public static int report(int resource, int instanceNumber, int context, String feature)
Report the usage of a resource of interest.Original signature:
uint32_t report(tResourceType, uint8_t, uint8_t, const char*)
- Parameters:
resource
- one of the values in the tResourceType above (max value 51).instanceNumber
- an index that identifies the resource instance.context
- an optional additional context number for some cases (such as module number). Set to 0 to omit.feature
- a string to be included describing features in use on a specific resource. Setting the same resource more than once allows you to change the feature string.- Returns:
- TODO
-
nativeGetControlWord
public static int nativeGetControlWord()
-
getControlWord
public static void getControlWord(ControlWord controlWord)
-
getAllianceStation
public static AllianceStationID getAllianceStation()
-
isNewControlData
public static boolean isNewControlData()
-
releaseDSMutex
public static void releaseDSMutex()
-
waitForDSDataTimeout
public static boolean waitForDSDataTimeout(double timeout)
-
getJoystickAxes
public static short getJoystickAxes(byte joystickNum, float[] axesArray)
-
getJoystickPOVs
public static short getJoystickPOVs(byte joystickNum, short[] povsArray)
-
getJoystickButtons
public static int getJoystickButtons(byte joystickNum, ByteBuffer count)
-
setJoystickOutputs
public static int setJoystickOutputs(byte joystickNum, int outputs, short leftRumble, short rightRumble)
-
getJoystickIsXbox
public static int getJoystickIsXbox(byte joystickNum)
-
getJoystickType
public static int getJoystickType(byte joystickNum)
-
getJoystickName
public static String getJoystickName(byte joystickNum)
-
getJoystickAxisType
public static int getJoystickAxisType(byte joystickNum, byte axis)
-
getMatchTime
public static double getMatchTime()
-
getSystemActive
public static boolean getSystemActive()
-
getBrownedOut
public static boolean getBrownedOut()
-
getMatchInfo
public static int getMatchInfo(MatchInfoData info)
-
sendError
public static int sendError(boolean isError, int errorCode, boolean isLVCode, String details, String location, String callStack, boolean printMsg)
-
sendConsoleLine
public static int sendConsoleLine(String line)
-
getPortWithModule
public static int getPortWithModule(byte module, byte channel)
-
getPort
public static int getPort(byte channel)
-
-