WPILibC++  2018.4.1-20180927020231-1209-ga732854
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
AnalogAccumulator.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 #include "hal/Types.h"
13 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
30 HAL_Bool HAL_IsAccumulatorChannel(HAL_AnalogInputHandle analogPortHandle,
31  int32_t* status);
32 
38 void HAL_InitAccumulator(HAL_AnalogInputHandle analogPortHandle,
39  int32_t* status);
40 
46 void HAL_ResetAccumulator(HAL_AnalogInputHandle analogPortHandle,
47  int32_t* status);
48 
64 void HAL_SetAccumulatorCenter(HAL_AnalogInputHandle analogPortHandle,
65  int32_t center, int32_t* status);
66 
73 void HAL_SetAccumulatorDeadband(HAL_AnalogInputHandle analogPortHandle,
74  int32_t deadband, int32_t* status);
75 
85 int64_t HAL_GetAccumulatorValue(HAL_AnalogInputHandle analogPortHandle,
86  int32_t* status);
87 
97 int64_t HAL_GetAccumulatorCount(HAL_AnalogInputHandle analogPortHandle,
98  int32_t* status);
99 
110 void HAL_GetAccumulatorOutput(HAL_AnalogInputHandle analogPortHandle,
111  int64_t* value, int64_t* count, int32_t* status);
112 #ifdef __cplusplus
113 } // extern "C"
114 #endif
115 
void HAL_SetAccumulatorCenter(HAL_AnalogInputHandle analogPortHandle, int32_t center, int32_t *status)
Set the center value of the accumulator.
void HAL_SetAccumulatorDeadband(HAL_AnalogInputHandle analogPortHandle, int32_t deadband, int32_t *status)
Set the accumulator's deadband.
int64_t HAL_GetAccumulatorValue(HAL_AnalogInputHandle analogPortHandle, int32_t *status)
Read the accumulated value.
void HAL_InitAccumulator(HAL_AnalogInputHandle analogPortHandle, int32_t *status)
Initialize the accumulator.
HAL_Bool HAL_IsAccumulatorChannel(HAL_AnalogInputHandle analogPortHandle, int32_t *status)
Is the channel attached to an accumulator.
void HAL_ResetAccumulator(HAL_AnalogInputHandle analogPortHandle, int32_t *status)
Resets the accumulator to the initial value.
int64_t HAL_GetAccumulatorCount(HAL_AnalogInputHandle analogPortHandle, int32_t *status)
Read the number of accumulated values.
void HAL_GetAccumulatorOutput(HAL_AnalogInputHandle analogPortHandle, int64_t *value, int64_t *count, int32_t *status)
Read the accumulated value and the number of accumulated values atomically.