WPILibC++ 2023.4.3
FRCUsageReporting.h
Go to the documentation of this file.
1#pragma once
2
3#include <stdint.h>
4
5#ifdef __cplusplus
6extern "C" {
7#endif
8
9// ifdef's definition is to allow for default parameters in C++.
10#ifdef __cplusplus
11/**
12 * Reports a hardware usage to the HAL.
13 *
14 * @param resource the used resource
15 * @param instanceNumber the instance of the resource
16 * @param context a user specified context index
17 * @param feature a user specified feature string
18 * @return the index of the added value in NetComm
19 */
20int64_t HAL_Report(int32_t resource, int32_t instanceNumber,
21 int32_t context = 0, const char* feature = nullptr);
22#else
23
24/**
25 * Reports a hardware usage to the HAL.
26 *
27 * @param resource the used resource
28 * @param instanceNumber the instance of the resource
29 * @param context a user specified context index
30 * @param feature a user specified feature string
31 * @return the index of the added value in NetComm
32 */
33int64_t HAL_Report(int32_t resource, int32_t instanceNumber, int32_t context,
34 const char* feature);
35#endif
36
37#ifdef __cplusplus
38}
39#endif
40
41/*
42 * Autogenerated file! Do not manually edit this file.
43 */
44
45#ifdef __cplusplus
46namespace 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,
142 kResourceType_PS4Controller = 94,
143 };
144 enum tInstances : int32_t {
145 kLanguage_LabVIEW = 1,
146 kLanguage_CPlusPlus = 2,
147 kLanguage_Java = 3,
148 kLanguage_Python = 4,
149 kLanguage_DotNet = 5,
150 kLanguage_Kotlin = 6,
151 kCANPlugin_BlackJagBridge = 1,
152 kCANPlugin_2CAN = 2,
153 kFramework_Iterative = 1,
154 kFramework_Simple = 2,
155 kFramework_CommandControl = 3,
156 kFramework_Timed = 4,
157 kFramework_ROS = 5,
158 kFramework_RobotBuilder = 6,
159 kRobotDrive_ArcadeStandard = 1,
160 kRobotDrive_ArcadeButtonSpin = 2,
161 kRobotDrive_ArcadeRatioCurve = 3,
162 kRobotDrive_Tank = 4,
163 kRobotDrive_MecanumPolar = 5,
164 kRobotDrive_MecanumCartesian = 6,
165 kRobotDrive2_DifferentialArcade = 7,
166 kRobotDrive2_DifferentialTank = 8,
167 kRobotDrive2_DifferentialCurvature = 9,
168 kRobotDrive2_MecanumCartesian = 10,
169 kRobotDrive2_MecanumPolar = 11,
170 kRobotDrive2_KilloughCartesian = 12,
171 kRobotDrive2_KilloughPolar = 13,
172 kDriverStationCIO_Analog = 1,
173 kDriverStationCIO_DigitalIn = 2,
174 kDriverStationCIO_DigitalOut = 3,
175 kDriverStationEIO_Acceleration = 1,
176 kDriverStationEIO_AnalogIn = 2,
177 kDriverStationEIO_AnalogOut = 3,
178 kDriverStationEIO_Button = 4,
179 kDriverStationEIO_LED = 5,
180 kDriverStationEIO_DigitalIn = 6,
181 kDriverStationEIO_DigitalOut = 7,
182 kDriverStationEIO_FixedDigitalOut = 8,
183 kDriverStationEIO_PWM = 9,
184 kDriverStationEIO_Encoder = 10,
185 kDriverStationEIO_TouchSlider = 11,
186 kADXL345_SPI = 1,
187 kADXL345_I2C = 2,
188 kCommand_Scheduler = 1,
189 kCommand2_Scheduler = 2,
190 kSmartDashboard_Instance = 1,
197 };
198}
199#endif
int64_t HAL_Report(int32_t resource, int32_t instanceNumber, int32_t context, const char *feature)
Reports a hardware usage to the HAL.
::int32_t int32_t
Definition: Meta.h:57
::int64_t int64_t
Definition: Meta.h:59