|  | 
| HAL_EncoderHandle | HAL_InitializeEncoder (HAL_Handle digitalSourceHandleA, HAL_AnalogTriggerType analogTriggerTypeA, HAL_Handle digitalSourceHandleB, HAL_AnalogTriggerType analogTriggerTypeB, HAL_Bool reverseDirection, HAL_EncoderEncodingType encodingType, int32_t *status) | 
|  | Initializes an encoder. 
 | 
|  | 
| void | HAL_FreeEncoder (HAL_EncoderHandle encoderHandle) | 
|  | Frees an encoder. 
 | 
|  | 
| void | HAL_SetEncoderSimDevice (HAL_EncoderHandle handle, HAL_SimDeviceHandle device) | 
|  | Indicates the encoder is used by a simulated device. 
 | 
|  | 
| int32_t | HAL_GetEncoder (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the current counts of the encoder after encoding type scaling. 
 | 
|  | 
| int32_t | HAL_GetEncoderRaw (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the raw counts of the encoder. 
 | 
|  | 
| int32_t | HAL_GetEncoderEncodingScale (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the encoder scale value. 
 | 
|  | 
| void | HAL_ResetEncoder (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Reads the current encoder value. 
 | 
|  | 
| double | HAL_GetEncoderPeriod (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the Period of the most recent count. 
 | 
|  | 
| void | HAL_SetEncoderMaxPeriod (HAL_EncoderHandle encoderHandle, double maxPeriod, int32_t *status) | 
|  | Sets the maximum period where the device is still considered "moving". 
 | 
|  | 
| HAL_Bool | HAL_GetEncoderStopped (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Determines if the clock is stopped. 
 | 
|  | 
| HAL_Bool | HAL_GetEncoderDirection (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the last direction the encoder value changed. 
 | 
|  | 
| double | HAL_GetEncoderDistance (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the current distance traveled by the encoder. 
 | 
|  | 
| double | HAL_GetEncoderRate (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the current rate of the encoder. 
 | 
|  | 
| void | HAL_SetEncoderMinRate (HAL_EncoderHandle encoderHandle, double minRate, int32_t *status) | 
|  | Sets the minimum rate to be considered moving by the encoder. 
 | 
|  | 
| void | HAL_SetEncoderDistancePerPulse (HAL_EncoderHandle encoderHandle, double distancePerPulse, int32_t *status) | 
|  | Sets the distance traveled per encoder pulse. 
 | 
|  | 
| void | HAL_SetEncoderReverseDirection (HAL_EncoderHandle encoderHandle, HAL_Bool reverseDirection, int32_t *status) | 
|  | Sets if to reverse the direction of the encoder. 
 | 
|  | 
| void | HAL_SetEncoderSamplesToAverage (HAL_EncoderHandle encoderHandle, int32_t samplesToAverage, int32_t *status) | 
|  | Sets the number of encoder samples to average when calculating encoder rate. 
 | 
|  | 
| int32_t | HAL_GetEncoderSamplesToAverage (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the current samples to average value. 
 | 
|  | 
| void | HAL_SetEncoderIndexSource (HAL_EncoderHandle encoderHandle, HAL_Handle digitalSourceHandle, HAL_AnalogTriggerType analogTriggerType, HAL_EncoderIndexingType type, int32_t *status) | 
|  | Sets the source for an index pulse on the encoder. 
 | 
|  | 
| int32_t | HAL_GetEncoderFPGAIndex (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the FPGA index of the encoder. 
 | 
|  | 
| double | HAL_GetEncoderDecodingScaleFactor (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the decoding scale factor of the encoder. 
 | 
|  | 
| double | HAL_GetEncoderDistancePerPulse (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the user set distance per pulse of the encoder. 
 | 
|  | 
| HAL_EncoderEncodingType | HAL_GetEncoderEncodingType (HAL_EncoderHandle encoderHandle, int32_t *status) | 
|  | Gets the encoding type of the encoder. 
 | 
|  |