WPILibC++  2018.4.1-20180729124724-1140-gcbb62fb
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
Types.h
1 /*----------------------------------------------------------------------------*/
2 /* Copyright (c) 2016-2018 FIRST. All Rights Reserved. */
3 /* Open Source Software - may be modified and shared by FRC teams. The code */
4 /* must be accompanied by the FIRST BSD license file in the root directory of */
5 /* the project. */
6 /*----------------------------------------------------------------------------*/
7 
8 #pragma once
9 
10 #include <stdint.h>
11 
12 #define HAL_kInvalidHandle 0
13 
14 typedef int32_t HAL_Handle;
15 
16 typedef HAL_Handle HAL_PortHandle;
17 
18 typedef HAL_Handle HAL_AnalogInputHandle;
19 
20 typedef HAL_Handle HAL_AnalogOutputHandle;
21 
22 typedef HAL_Handle HAL_AnalogTriggerHandle;
23 
24 typedef HAL_Handle HAL_CompressorHandle;
25 
26 typedef HAL_Handle HAL_CounterHandle;
27 
28 typedef HAL_Handle HAL_DigitalHandle;
29 
30 typedef HAL_Handle HAL_DigitalPWMHandle;
31 
32 typedef HAL_Handle HAL_EncoderHandle;
33 
34 typedef HAL_Handle HAL_FPGAEncoderHandle;
35 
36 typedef HAL_Handle HAL_GyroHandle;
37 
38 typedef HAL_Handle HAL_InterruptHandle;
39 
40 typedef HAL_Handle HAL_NotifierHandle;
41 
42 typedef HAL_Handle HAL_RelayHandle;
43 
44 typedef HAL_Handle HAL_SolenoidHandle;
45 
46 typedef HAL_Handle HAL_CANHandle;
47 
48 typedef HAL_CANHandle HAL_PDPHandle;
49 
50 typedef int32_t HAL_Bool;
51 
52 #ifdef __cplusplus
53 #define HAL_ENUM(name) enum name : int32_t
54 #else
55 #define HAL_ENUM(name) \
56  typedef int32_t name; \
57  enum name
58 #endif