20 int64_t HAL_Report(int32_t resource, int32_t instanceNumber,
21 int32_t context = 0,
const char* feature =
nullptr);
33 int64_t HAL_Report(int32_t resource, int32_t instanceNumber, int32_t context,
46 namespace HALUsageReporting {
47 enum tResourceType : int32_t {
48 kResourceType_Controller = 0,
49 kResourceType_Module = 1,
50 kResourceType_Language = 2,
51 kResourceType_CANPlugin = 3,
52 kResourceType_Accelerometer = 4,
53 kResourceType_ADXL345 = 5,
54 kResourceType_AnalogChannel = 6,
55 kResourceType_AnalogTrigger = 7,
56 kResourceType_AnalogTriggerOutput = 8,
57 kResourceType_CANJaguar = 9,
58 kResourceType_Compressor = 10,
59 kResourceType_Counter = 11,
60 kResourceType_Dashboard = 12,
61 kResourceType_DigitalInput = 13,
62 kResourceType_DigitalOutput = 14,
63 kResourceType_DriverStationCIO = 15,
64 kResourceType_DriverStationEIO = 16,
65 kResourceType_DriverStationLCD = 17,
66 kResourceType_Encoder = 18,
67 kResourceType_GearTooth = 19,
68 kResourceType_Gyro = 20,
69 kResourceType_I2C = 21,
70 kResourceType_Framework = 22,
71 kResourceType_Jaguar = 23,
72 kResourceType_Joystick = 24,
73 kResourceType_Kinect = 25,
74 kResourceType_KinectStick = 26,
75 kResourceType_PIDController = 27,
76 kResourceType_Preferences = 28,
77 kResourceType_PWM = 29,
78 kResourceType_Relay = 30,
79 kResourceType_RobotDrive = 31,
80 kResourceType_SerialPort = 32,
81 kResourceType_Servo = 33,
82 kResourceType_Solenoid = 34,
83 kResourceType_SPI = 35,
84 kResourceType_Task = 36,
85 kResourceType_Ultrasonic = 37,
86 kResourceType_Victor = 38,
87 kResourceType_Button = 39,
88 kResourceType_Command = 40,
89 kResourceType_AxisCamera = 41,
90 kResourceType_PCVideoServer = 42,
91 kResourceType_SmartDashboard = 43,
92 kResourceType_Talon = 44,
93 kResourceType_HiTechnicColorSensor = 45,
94 kResourceType_HiTechnicAccel = 46,
95 kResourceType_HiTechnicCompass = 47,
96 kResourceType_SRF08 = 48,
97 kResourceType_AnalogOutput = 49,
98 kResourceType_VictorSP = 50,
99 kResourceType_PWMTalonSRX = 51,
100 kResourceType_CANTalonSRX = 52,
101 kResourceType_ADXL362 = 53,
102 kResourceType_ADXRS450 = 54,
103 kResourceType_RevSPARK = 55,
104 kResourceType_MindsensorsSD540 = 56,
105 kResourceType_DigitalGlitchFilter = 57,
106 kResourceType_ADIS16448 = 58,
107 kResourceType_PDP = 59,
108 kResourceType_PCM = 60,
109 kResourceType_PigeonIMU = 61,
110 kResourceType_NidecBrushless = 62,
111 kResourceType_CANifier = 63,
112 kResourceType_TalonFX = 64,
113 kResourceType_CTRE_future1 = 65,
114 kResourceType_CTRE_future2 = 66,
115 kResourceType_CTRE_future3 = 67,
116 kResourceType_CTRE_future4 = 68,
117 kResourceType_CTRE_future5 = 69,
118 kResourceType_CTRE_future6 = 70,
119 kResourceType_LinearFilter = 71,
120 kResourceType_XboxController = 72,
121 kResourceType_UsbCamera = 73,
122 kResourceType_NavX = 74,
123 kResourceType_Pixy = 75,
124 kResourceType_Pixy2 = 76,
125 kResourceType_ScanseSweep = 77,
126 kResourceType_Shuffleboard = 78,
127 kResourceType_CAN = 79,
128 kResourceType_DigilentDMC60 = 80,
129 kResourceType_PWMVictorSPX = 81,
130 kResourceType_RevSparkMaxPWM = 82,
131 kResourceType_RevSparkMaxCAN = 83,
132 kResourceType_ADIS16470 = 84,
133 kResourceType_PIDController2 = 85,
134 kResourceType_ProfiledPIDController = 86,
135 kResourceType_Kinematics = 87,
136 kResourceType_Odometry = 88,
137 kResourceType_Units = 89,
138 kResourceType_TrapezoidProfile = 90,
139 kResourceType_DutyCycle = 91,
140 kResourceType_AddressableLEDs = 92,
141 kResourceType_FusionVenom = 93,
143 enum tInstances : int32_t {
144 kLanguage_LabVIEW = 1,
145 kLanguage_CPlusPlus = 2,
147 kLanguage_Python = 4,
148 kLanguage_DotNet = 5,
149 kLanguage_Kotlin = 6,
150 kCANPlugin_BlackJagBridge = 1,
152 kFramework_Iterative = 1,
153 kFramework_Simple = 2,
154 kFramework_CommandControl = 3,
155 kFramework_Timed = 4,
157 kFramework_RobotBuilder = 6,
158 kRobotDrive_ArcadeStandard = 1,
159 kRobotDrive_ArcadeButtonSpin = 2,
160 kRobotDrive_ArcadeRatioCurve = 3,
161 kRobotDrive_Tank = 4,
162 kRobotDrive_MecanumPolar = 5,
163 kRobotDrive_MecanumCartesian = 6,
164 kRobotDrive2_DifferentialArcade = 7,
165 kRobotDrive2_DifferentialTank = 8,
166 kRobotDrive2_DifferentialCurvature = 9,
167 kRobotDrive2_MecanumCartesian = 10,
168 kRobotDrive2_MecanumPolar = 11,
169 kRobotDrive2_KilloughCartesian = 12,
170 kRobotDrive2_KilloughPolar = 13,
171 kDriverStationCIO_Analog = 1,
172 kDriverStationCIO_DigitalIn = 2,
173 kDriverStationCIO_DigitalOut = 3,
174 kDriverStationEIO_Acceleration = 1,
175 kDriverStationEIO_AnalogIn = 2,
176 kDriverStationEIO_AnalogOut = 3,
177 kDriverStationEIO_Button = 4,
178 kDriverStationEIO_LED = 5,
179 kDriverStationEIO_DigitalIn = 6,
180 kDriverStationEIO_DigitalOut = 7,
181 kDriverStationEIO_FixedDigitalOut = 8,
182 kDriverStationEIO_PWM = 9,
183 kDriverStationEIO_Encoder = 10,
184 kDriverStationEIO_TouchSlider = 11,
187 kCommand_Scheduler = 1,
188 kCommand2_Scheduler = 2,
189 kSmartDashboard_Instance = 1,
190 kKinematics_DifferentialDrive = 1,
191 kKinematics_MecanumDrive = 2,
192 kKinematics_SwerveDrive = 3,
193 kOdometry_DifferentialDrive = 1,
194 kOdometry_MecanumDrive = 2,
195 kOdometry_SwerveDrive = 3,