12 #include "hal/Types.h"
14 #define HAL_IO_CONFIG_DATA_SIZE 32
15 #define HAL_SYS_STATUS_DATA_SIZE 44
16 #define HAL_USER_STATUS_DATA_SIZE \
17 (984 - HAL_IO_CONFIG_DATA_SIZE - HAL_SYS_STATUS_DATA_SIZE)
19 #define HALFRC_NetworkCommunication_DynamicType_DSEnhancedIO_Input 17
20 #define HALFRC_NetworkCommunication_DynamicType_DSEnhancedIO_Output 18
21 #define HALFRC_NetworkCommunication_DynamicType_Kinect_Header 19
22 #define HALFRC_NetworkCommunication_DynamicType_Kinect_Extra1 20
23 #define HALFRC_NetworkCommunication_DynamicType_Kinect_Vertices1 21
24 #define HALFRC_NetworkCommunication_DynamicType_Kinect_Extra2 22
25 #define HALFRC_NetworkCommunication_DynamicType_Kinect_Vertices2 23
26 #define HALFRC_NetworkCommunication_DynamicType_Kinect_Joystick 24
27 #define HALFRC_NetworkCommunication_DynamicType_Kinect_Custom 25
31 uint32_t autonomous : 1;
34 uint32_t fmsAttached : 1;
35 uint32_t dsAttached : 1;
36 uint32_t control_reserved : 26;
41 HAL_ENUM(HAL_AllianceStationID) {
42 HAL_AllianceStationID_kRed1,
43 HAL_AllianceStationID_kRed2,
44 HAL_AllianceStationID_kRed3,
45 HAL_AllianceStationID_kBlue1,
46 HAL_AllianceStationID_kBlue2,
47 HAL_AllianceStationID_kBlue3,
50 HAL_ENUM(HAL_MatchType) {
52 HAL_kMatchType_practice,
53 HAL_kMatchType_qualification,
54 HAL_kMatchType_elimination,
62 #define HAL_kMaxJoystickAxes 12
63 #define HAL_kMaxJoystickPOVs 12
64 #define HAL_kMaxJoysticks 6
68 float axes[HAL_kMaxJoystickAxes];
74 int16_t povs[HAL_kMaxJoystickPOVs];
89 uint8_t axisTypes[HAL_kMaxJoystickAxes];
97 HAL_MatchType matchType;
100 uint8_t gameSpecificMessage[64];
101 uint16_t gameSpecificMessageSize;
121 int32_t HAL_SendError(HAL_Bool isError, int32_t errorCode, HAL_Bool isLVCode,
122 const char* details,
const char* location,
123 const char* callStack, HAL_Bool printMsg);
141 HAL_AllianceStationID HAL_GetAllianceStation(int32_t* status);
168 int32_t HAL_GetJoystickButtons(int32_t joystickNum,
183 int32_t HAL_GetJoystickDescriptor(int32_t joystickNum,
192 HAL_Bool HAL_GetJoystickIsXbox(int32_t joystickNum);
203 int32_t HAL_GetJoystickType(int32_t joystickNum);
215 char* HAL_GetJoystickName(int32_t joystickNum);
222 void HAL_FreeJoystickName(
char* name);
234 int32_t HAL_GetJoystickAxisType(int32_t joystickNum, int32_t axis);
245 int32_t HAL_SetJoystickOutputs(int32_t joystickNum, int64_t outputs,
246 int32_t leftRumble, int32_t rightRumble);
264 double HAL_GetMatchTime(int32_t* status);
274 #ifndef HAL_USE_LABVIEW
280 void HAL_ReleaseDSMutex(
void);
288 HAL_Bool HAL_IsNewControlData(
void);
293 void HAL_WaitForDSData(
void);
303 HAL_Bool HAL_WaitForDSDataTimeout(
double timeout);
310 void HAL_InitializeDriverStation(
void);
317 void HAL_ObserveUserProgramStarting(
void);
326 void HAL_ObserveUserProgramDisabled(
void);
335 void HAL_ObserveUserProgramAutonomous(
void);
344 void HAL_ObserveUserProgramTeleop(
void);
353 void HAL_ObserveUserProgramTest(
void);
355 #endif // HAL_USE_LABVIEW
Definition: DriverStation.h:84
Definition: DriverStation.h:95
Definition: DriverStation.h:72
Definition: DriverStation.h:29
Definition: DriverStation.h:66