27#define HAL_DEFAULT_POWER_DISTRIBUTION_MODULE -1
44 const char* allocationLocation, int32_t* status);
148 int32_t currentsLength, int32_t* status);
@ HAL_ENUM
Definition: Value.h:14
double HAL_GetPowerDistributionChannelCurrent(HAL_PowerDistributionHandle handle, int32_t channel, int32_t *status)
Gets the current of a specific PowerDistribution channel.
double HAL_GetPowerDistributionTemperature(HAL_PowerDistributionHandle handle, int32_t *status)
Gets the temperature of the Power Distribution Panel.
void HAL_CleanPowerDistribution(HAL_PowerDistributionHandle handle)
Cleans a PowerDistribution module.
void HAL_StopPowerDistributionStream(HAL_PowerDistributionHandle handle, int32_t *status)
double HAL_GetPowerDistributionTotalPower(HAL_PowerDistributionHandle handle, int32_t *status)
Gets the total power of the Power Distribution Panel.
void HAL_GetPowerDistributionAllChannelCurrents(HAL_PowerDistributionHandle handle, double *currents, int32_t currentsLength, int32_t *status)
Gets the current of all channels on the PowerDistribution.
HAL_PowerDistributionType
The types of power distribution devices.
Definition: PowerDistribution.h:21
void HAL_FreePowerDistributionStreamData(HAL_PowerDistributionChannelData *data, int32_t count)
void HAL_ClearPowerDistributionStickyFaults(HAL_PowerDistributionHandle handle, int32_t *status)
Clears any PowerDistribution sticky faults.
HAL_Bool HAL_CheckPowerDistributionModule(int32_t module, HAL_PowerDistributionType type)
Checks if a PowerDistribution module is valid.
int32_t HAL_GetPowerDistributionNumChannels(HAL_PowerDistributionHandle handle, int32_t *status)
Gets the number of channels for this handle.
HAL_PowerDistributionHandle HAL_InitializePowerDistribution(int32_t moduleNumber, HAL_PowerDistributionType type, const char *allocationLocation, int32_t *status)
Initializes a Power Distribution Panel.
double HAL_GetPowerDistributionTotalEnergy(HAL_PowerDistributionHandle handle, int32_t *status)
Gets the total energy of the Power Distribution Panel.
int32_t HAL_GetPowerDistributionModuleNumber(HAL_PowerDistributionHandle handle, int32_t *status)
Gets the module number for a specific handle.
void HAL_GetPowerDistributionFaults(HAL_PowerDistributionHandle handle, HAL_PowerDistributionFaults *faults, int32_t *status)
Get the current faults of the PowerDistribution.
HAL_Bool HAL_GetPowerDistributionSwitchableChannel(HAL_PowerDistributionHandle handle, int32_t *status)
Returns true if switchable channel is powered on.
HAL_PowerDistributionChannelData * HAL_GetPowerDistributionStreamData(HAL_PowerDistributionHandle handle, int32_t *count, int32_t *status)
void HAL_GetPowerDistributionVersion(HAL_PowerDistributionHandle handle, HAL_PowerDistributionVersion *version, int32_t *status)
Get the version of the PowerDistribution.
void HAL_GetPowerDistributionStickyFaults(HAL_PowerDistributionHandle handle, HAL_PowerDistributionStickyFaults *stickyFaults, int32_t *status)
Gets the sticky faults of the PowerDistribution.
HAL_Bool HAL_CheckPowerDistributionChannel(HAL_PowerDistributionHandle handle, int32_t channel)
Checks if a PowerDistribution channel is valid.
double HAL_GetPowerDistributionVoltage(HAL_PowerDistributionHandle handle, int32_t *status)
Gets the PowerDistribution input voltage.
void HAL_StartPowerDistributionStream(HAL_PowerDistributionHandle handle, int32_t *status)
void HAL_SetPowerDistributionSwitchableChannel(HAL_PowerDistributionHandle handle, HAL_Bool enabled, int32_t *status)
Power on/off switchable channel.
struct HAL_PowerDistributionChannelData HAL_PowerDistributionChannelData
HAL_PowerDistributionType HAL_GetPowerDistributionType(HAL_PowerDistributionHandle handle, int32_t *status)
Gets the type of PowerDistribution module.
void HAL_ResetPowerDistributionTotalEnergy(HAL_PowerDistributionHandle handle, int32_t *status)
Resets the PowerDistribution accumulated energy.
double HAL_GetPowerDistributionTotalCurrent(HAL_PowerDistributionHandle handle, int32_t *status)
Gets the total current of the PowerDistribution.
@ HAL_PowerDistributionType_kAutomatic
Definition: PowerDistribution.h:22
@ HAL_PowerDistributionType_kCTRE
Definition: PowerDistribution.h:23
@ HAL_PowerDistributionType_kRev
Definition: PowerDistribution.h:24
int32_t HAL_Bool
Definition: Types.h:73
HAL_Handle HAL_PowerDistributionHandle
Definition: Types.h:65
constexpr auto count() -> size_t
Definition: core.h:1203
type
Definition: core.h:556
Definition: PowerDistribution.h:345
float current
Definition: PowerDistribution.h:346
int32_t channel
Definition: PowerDistribution.h:347
uint32_t timestamp
Definition: PowerDistribution.h:348
Definition: PowerDistribution.h:246
uint32_t channel21BreakerFault
Definition: PowerDistribution.h:268
uint32_t channel4BreakerFault
Definition: PowerDistribution.h:251
uint32_t brownout
Definition: PowerDistribution.h:271
uint32_t channel3BreakerFault
Definition: PowerDistribution.h:250
uint32_t channel0BreakerFault
Definition: PowerDistribution.h:247
uint32_t channel11BreakerFault
Definition: PowerDistribution.h:258
uint32_t hardwareFault
Definition: PowerDistribution.h:273
uint32_t channel16BreakerFault
Definition: PowerDistribution.h:263
uint32_t channel22BreakerFault
Definition: PowerDistribution.h:269
uint32_t channel10BreakerFault
Definition: PowerDistribution.h:257
uint32_t channel14BreakerFault
Definition: PowerDistribution.h:261
uint32_t channel20BreakerFault
Definition: PowerDistribution.h:267
uint32_t channel9BreakerFault
Definition: PowerDistribution.h:256
uint32_t channel1BreakerFault
Definition: PowerDistribution.h:248
uint32_t channel12BreakerFault
Definition: PowerDistribution.h:259
uint32_t channel2BreakerFault
Definition: PowerDistribution.h:249
uint32_t channel7BreakerFault
Definition: PowerDistribution.h:254
uint32_t channel23BreakerFault
Definition: PowerDistribution.h:270
uint32_t channel19BreakerFault
Definition: PowerDistribution.h:266
uint32_t canWarning
Definition: PowerDistribution.h:272
uint32_t channel5BreakerFault
Definition: PowerDistribution.h:252
uint32_t channel17BreakerFault
Definition: PowerDistribution.h:264
uint32_t channel15BreakerFault
Definition: PowerDistribution.h:262
uint32_t channel8BreakerFault
Definition: PowerDistribution.h:255
uint32_t channel18BreakerFault
Definition: PowerDistribution.h:265
uint32_t channel13BreakerFault
Definition: PowerDistribution.h:260
uint32_t channel6BreakerFault
Definition: PowerDistribution.h:253
Storage for REV PDH Sticky Faults.
Definition: PowerDistribution.h:279
uint32_t channel14BreakerFault
Definition: PowerDistribution.h:294
uint32_t channel11BreakerFault
Definition: PowerDistribution.h:291
uint32_t canWarning
Definition: PowerDistribution.h:305
uint32_t channel15BreakerFault
Definition: PowerDistribution.h:295
uint32_t channel19BreakerFault
Definition: PowerDistribution.h:299
uint32_t brownout
Definition: PowerDistribution.h:304
uint32_t channel23BreakerFault
Definition: PowerDistribution.h:303
uint32_t channel2BreakerFault
Definition: PowerDistribution.h:282
uint32_t channel5BreakerFault
Definition: PowerDistribution.h:285
uint32_t channel9BreakerFault
Definition: PowerDistribution.h:289
uint32_t channel7BreakerFault
Definition: PowerDistribution.h:287
uint32_t channel16BreakerFault
Definition: PowerDistribution.h:296
uint32_t channel21BreakerFault
Definition: PowerDistribution.h:301
uint32_t channel6BreakerFault
Definition: PowerDistribution.h:286
uint32_t channel17BreakerFault
Definition: PowerDistribution.h:297
uint32_t channel8BreakerFault
Definition: PowerDistribution.h:288
uint32_t channel3BreakerFault
Definition: PowerDistribution.h:283
uint32_t channel10BreakerFault
Definition: PowerDistribution.h:290
uint32_t hasReset
Definition: PowerDistribution.h:307
uint32_t channel1BreakerFault
Definition: PowerDistribution.h:281
uint32_t channel12BreakerFault
Definition: PowerDistribution.h:292
uint32_t channel22BreakerFault
Definition: PowerDistribution.h:302
uint32_t channel13BreakerFault
Definition: PowerDistribution.h:293
uint32_t channel0BreakerFault
Definition: PowerDistribution.h:280
uint32_t channel18BreakerFault
Definition: PowerDistribution.h:298
uint32_t channel4BreakerFault
Definition: PowerDistribution.h:284
uint32_t channel20BreakerFault
Definition: PowerDistribution.h:300
uint32_t canBusOff
Definition: PowerDistribution.h:306
Power distribution version.
Definition: PowerDistribution.h:231
uint32_t hardwareMajor
Hardware major version number.
Definition: PowerDistribution.h:241
uint32_t firmwareMinor
Firmware minor version number.
Definition: PowerDistribution.h:235
uint32_t firmwareMajor
Firmware major version number.
Definition: PowerDistribution.h:233
uint32_t hardwareMinor
Hardware minor version number.
Definition: PowerDistribution.h:239
uint32_t firmwareFix
Firmware fix version number.
Definition: PowerDistribution.h:237
uint32_t uniqueId
Unique ID.
Definition: PowerDistribution.h:243