RISE Final Code.
Features
Generic WPILib Object initialization and configuration via JSON files. The following Components are currently supported with fair customizability (more components/customizations can be added if needed/requested):
- Compressor (WPILib)
- DigitalInput (WPILib)
- Encoder (WPILib)
- PowerDistributionPanel (WPILib)
- Solenoid (WPILib)
- Ultrasonic (WPILib)
- WPI_TalonSRX (CTRE)
- WPI_VictorSPX (CTRE)
These interfaces must be implemented into a class/subsystem which extends from the following:
- SuperSubsystem, extends from Subsystem (WPILib).
- PIDSuperSubsystem, extends from PIDSubsystem (WPILib).
Additionally, there's a wrapper for WPILib's Controller class that adds simple button initialization/calling via JSON or button/axis number—JController.
Your OI class must extend ButtonHelper in order to call Buttons from the HashMap storing them.