mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-07-06 03:31:43 +00:00
Switches AnalogInputs and AnalogTriggers to Handles (#117)
Results in a breaking change to AnalogTrigger int constructor. If a user wants multiple AnalogTriggers, they must use the AnalogInput constructor.
This commit is contained in:
committed by
Peter Johnson
parent
77a1af44c4
commit
e8e052712e
@@ -9,16 +9,21 @@
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "Handles.h"
|
||||
|
||||
extern "C" {
|
||||
bool isAccumulatorChannel(void* analog_port_pointer, int32_t* status);
|
||||
void initAccumulator(void* analog_port_pointer, int32_t* status);
|
||||
void resetAccumulator(void* analog_port_pointer, int32_t* status);
|
||||
void setAccumulatorCenter(void* analog_port_pointer, int32_t center,
|
||||
bool isAccumulatorChannel(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
void setAccumulatorDeadband(void* analog_port_pointer, int32_t deadband,
|
||||
void initAccumulator(HalAnalogInputHandle analog_port_handle, int32_t* status);
|
||||
void resetAccumulator(HalAnalogInputHandle analog_port_handle, int32_t* status);
|
||||
void setAccumulatorCenter(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t center, int32_t* status);
|
||||
void setAccumulatorDeadband(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t deadband, int32_t* status);
|
||||
int64_t getAccumulatorValue(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
int64_t getAccumulatorValue(void* analog_port_pointer, int32_t* status);
|
||||
uint32_t getAccumulatorCount(void* analog_port_pointer, int32_t* status);
|
||||
void getAccumulatorOutput(void* analog_port_pointer, int64_t* value,
|
||||
uint32_t* count, int32_t* status);
|
||||
uint32_t getAccumulatorCount(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
void getAccumulatorOutput(HalAnalogInputHandle analog_port_handle,
|
||||
int64_t* value, uint32_t* count, int32_t* status);
|
||||
}
|
||||
|
||||
@@ -13,25 +13,34 @@
|
||||
|
||||
extern "C" {
|
||||
// Analog input functions
|
||||
void* initializeAnalogInputPort(HalPortHandle port_handle, int32_t* status);
|
||||
void freeAnalogInputPort(void* analog_port_pointer);
|
||||
HalAnalogInputHandle initializeAnalogInputPort(HalPortHandle port_handle,
|
||||
int32_t* status);
|
||||
void freeAnalogInputPort(HalAnalogInputHandle analog_port_handle);
|
||||
bool checkAnalogModule(uint8_t module);
|
||||
bool checkAnalogInputChannel(uint32_t pin);
|
||||
|
||||
void setAnalogSampleRate(double samplesPerSecond, int32_t* status);
|
||||
float getAnalogSampleRate(int32_t* status);
|
||||
void setAnalogAverageBits(void* analog_port_pointer, uint32_t bits,
|
||||
int32_t* status);
|
||||
uint32_t getAnalogAverageBits(void* analog_port_pointer, int32_t* status);
|
||||
void setAnalogOversampleBits(void* analog_port_pointer, uint32_t bits,
|
||||
int32_t* status);
|
||||
uint32_t getAnalogOversampleBits(void* analog_port_pointer, int32_t* status);
|
||||
int16_t getAnalogValue(void* analog_port_pointer, int32_t* status);
|
||||
int32_t getAnalogAverageValue(void* analog_port_pointer, int32_t* status);
|
||||
int32_t getAnalogVoltsToValue(void* analog_port_pointer, double voltage,
|
||||
void setAnalogAverageBits(HalAnalogInputHandle analog_port_handle,
|
||||
uint32_t bits, int32_t* status);
|
||||
uint32_t getAnalogAverageBits(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
float getAnalogVoltage(void* analog_port_pointer, int32_t* status);
|
||||
float getAnalogAverageVoltage(void* analog_port_pointer, int32_t* status);
|
||||
uint32_t getAnalogLSBWeight(void* analog_port_pointer, int32_t* status);
|
||||
int32_t getAnalogOffset(void* analog_port_pointer, int32_t* status);
|
||||
void setAnalogOversampleBits(HalAnalogInputHandle analog_port_handle,
|
||||
uint32_t bits, int32_t* status);
|
||||
uint32_t getAnalogOversampleBits(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
int16_t getAnalogValue(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
int32_t getAnalogAverageValue(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
int32_t getAnalogVoltsToValue(HalAnalogInputHandle analog_port_handle,
|
||||
double voltage, int32_t* status);
|
||||
float getAnalogVoltage(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
float getAnalogAverageVoltage(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
uint32_t getAnalogLSBWeight(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
int32_t getAnalogOffset(HalAnalogInputHandle analog_port_handle,
|
||||
int32_t* status);
|
||||
}
|
||||
|
||||
@@ -19,20 +19,23 @@ enum AnalogTriggerType {
|
||||
};
|
||||
|
||||
extern "C" {
|
||||
void* initializeAnalogTrigger(HalPortHandle port_handle, uint32_t* index,
|
||||
int32_t* status);
|
||||
void cleanAnalogTrigger(void* analog_trigger_pointer, int32_t* status);
|
||||
void setAnalogTriggerLimitsRaw(void* analog_trigger_pointer, int32_t lower,
|
||||
int32_t upper, int32_t* status);
|
||||
void setAnalogTriggerLimitsVoltage(void* analog_trigger_pointer, double lower,
|
||||
double upper, int32_t* status);
|
||||
void setAnalogTriggerAveraged(void* analog_trigger_pointer,
|
||||
HalAnalogTriggerHandle initializeAnalogTrigger(HalAnalogInputHandle port_handle,
|
||||
uint32_t* index,
|
||||
int32_t* status);
|
||||
void cleanAnalogTrigger(HalAnalogTriggerHandle analog_trigger_handle,
|
||||
int32_t* status);
|
||||
void setAnalogTriggerLimitsRaw(HalAnalogTriggerHandle analog_trigger_handle,
|
||||
int32_t lower, int32_t upper, int32_t* status);
|
||||
void setAnalogTriggerLimitsVoltage(HalAnalogTriggerHandle analog_trigger_handle,
|
||||
double lower, double upper, int32_t* status);
|
||||
void setAnalogTriggerAveraged(HalAnalogTriggerHandle analog_trigger_handle,
|
||||
bool useAveragedValue, int32_t* status);
|
||||
void setAnalogTriggerFiltered(void* analog_trigger_pointer,
|
||||
void setAnalogTriggerFiltered(HalAnalogTriggerHandle analog_trigger_handle,
|
||||
bool useFilteredValue, int32_t* status);
|
||||
bool getAnalogTriggerInWindow(void* analog_trigger_pointer, int32_t* status);
|
||||
bool getAnalogTriggerTriggerState(void* analog_trigger_pointer,
|
||||
bool getAnalogTriggerInWindow(HalAnalogTriggerHandle analog_trigger_handle,
|
||||
int32_t* status);
|
||||
bool getAnalogTriggerTriggerState(HalAnalogTriggerHandle analog_trigger_handle,
|
||||
int32_t* status);
|
||||
bool getAnalogTriggerOutput(void* analog_trigger_pointer,
|
||||
bool getAnalogTriggerOutput(HalAnalogTriggerHandle analog_trigger_handle,
|
||||
AnalogTriggerType type, int32_t* status);
|
||||
}
|
||||
|
||||
@@ -20,3 +20,7 @@ typedef HalHandle HalInterruptHandle;
|
||||
typedef HalHandle HalNotifierHandle;
|
||||
|
||||
typedef HalHandle HalAnalogOutputHandle;
|
||||
|
||||
typedef HalHandle HalAnalogInputHandle;
|
||||
|
||||
typedef HalHandle HalAnalogTriggerHandle;
|
||||
|
||||
Reference in New Issue
Block a user