[wpilib, hal] High Level REV PH changes (#3792)

More functionality was implemented at the HAL level, so expose that to the wpilib level.

This also does units changes for all the PH related functionality.
This commit is contained in:
Thad House
2021-12-19 13:41:35 -08:00
committed by GitHub
parent 59a7528fd6
commit 34b2d0dae1
23 changed files with 770 additions and 143 deletions

View File

@@ -6,7 +6,9 @@
#include <memory>
#include <units/current.h>
#include <units/time.h>
#include <units/voltage.h>
#include "frc/CompressorConfigType.h"
#include "frc/PneumaticsModuleType.h"
@@ -23,17 +25,17 @@ class PneumaticsBase {
virtual bool GetPressureSwitch() const = 0;
virtual double GetCompressorCurrent() const = 0;
virtual units::ampere_t GetCompressorCurrent() const = 0;
virtual void DisableCompressor() = 0;
virtual void EnableCompressorDigital() = 0;
virtual void EnableCompressorAnalog(double minAnalogVoltage,
double maxAnalogVoltage) = 0;
virtual void EnableCompressorAnalog(units::volt_t minAnalogVoltage,
units::volt_t maxAnalogVoltage) = 0;
virtual void EnableCompressorHybrid(double minAnalogVoltage,
double maxAnalogVoltage) = 0;
virtual void EnableCompressorHybrid(units::volt_t minAnalogVoltage,
units::volt_t maxAnalogVoltage) = 0;
virtual CompressorConfigType GetCompressorConfigType() const = 0;
@@ -59,6 +61,8 @@ class PneumaticsBase {
virtual void UnreserveCompressor() = 0;
virtual units::volt_t GetAnalogVoltage(int channel) const = 0;
virtual Solenoid MakeSolenoid(int channel) = 0;
virtual DoubleSolenoid MakeDoubleSolenoid(int forwardChannel,
int reverseChannel) = 0;