Skip to content

Instantly share code, notes, and snippets.

@ThomasJClark
Created January 7, 2015 20:36
Show Gist options
  • Save ThomasJClark/1d7398954fb6993f25ab to your computer and use it in GitHub Desktop.
Save ThomasJClark/1d7398954fb6993f25ab to your computer and use it in GitHub Desktop.
import edu.wpi.first.wpilibj.SpeedController;
public class MultiSpeedController implements SpeedController {
private SpeedController[] speedControllers;
private double speed;
public MultiSpeedController(SpeedController... speedControllers) {
this.speedControllers = speedControllers;
this.set(0.0);
}
@Override
public double get() {
return this.speed;
}
@Override
public void set(double speed) {
this.speed = speed;
for (SpeedController speedController : this.speedControllers) {
speedController.set(speed);
}
}
@Override
public void set(double speed, byte syncGroup) {
this.set(speed);
}
@Override
public void pidWrite(double output) {
this.set(output);
}
@Override
public void disable() {
for (SpeedController speedController : this.speedControllers) {
speedController.disable();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment