13 #include "frc/SpeedController.h"
14 #include "frc/smartdashboard/SendableBase.h"
20 template <
class... SpeedControllers>
22 SpeedControllers&... speedControllers);
23 ~SpeedControllerGroup()
override =
default;
25 SpeedControllerGroup(SpeedControllerGroup&&) =
default;
26 SpeedControllerGroup& operator=(SpeedControllerGroup&&) =
default;
28 void Set(
double speed)
override;
29 double Get()
const override;
34 void PIDWrite(
double output)
override;
39 bool m_isInverted =
false;
40 std::vector<std::reference_wrapper<SpeedController>> m_speedControllers;
45 #include "frc/SpeedControllerGroup.inc"
double Get() const override
Common interface for getting the current set speed of a speed controller.
Interface for speed controlling devices.
Definition: SpeedController.h:17
WPILib FRC namespace.
Definition: SPIAccelerometerSim.h:18
void Disable() override
Common interface for disabling a motor.
Definition: SpeedControllerGroup.h:18
void SetInverted(bool isInverted) override
Common interface for inverting direction of a speed controller.
void Set(double speed) override
Common interface for setting the speed of a speed controller.
void InitSendable(SendableBuilder &builder) override
Initializes this Sendable object.
Definition: SendableBase.h:19
Definition: SendableBuilder.h:23
void StopMotor() override
Common interface to stop the motor until Set is called again.
bool GetInverted() const override
Common interface for returning the inversion state of a speed controller.