13 #include "frc/SpeedController.h"
14 #include "frc/smartdashboard/Sendable.h"
15 #include "frc/smartdashboard/SendableHelper.h"
23 template <
class... SpeedControllers>
25 SpeedControllers&... speedControllers);
31 void Set(
double speed)
override;
32 double Get()
const override;
37 void PIDWrite(
double output)
override;
42 bool m_isInverted =
false;
43 std::vector<std::reference_wrapper<SpeedController>> m_speedControllers;
48 #include "frc/SpeedControllerGroup.inc"
bool GetInverted() const override
Common interface for returning the inversion state of a speed controller.
void SetInverted(bool isInverted) override
Common interface for inverting direction of a speed controller.
double Get() const override
Common interface for getting the current set speed of a speed controller.
void Set(double speed) override
Common interface for setting the speed of a speed controller.
Definition: SpeedControllerGroup.h:19
void StopMotor() override
Common interface to stop the motor until Set is called again.
void InitSendable(SendableBuilder &builder) override
Initializes this Sendable object.
Interface for Sendable objects.
Definition: Sendable.h:17
A class that enforces constraints on the differential drive kinematics.
Definition: SPIAccelerometerSim.h:16
Interface for speed controlling devices.
Definition: SpeedController.h:19
void Disable() override
Common interface for disabling a motor.
A helper class for use with objects that add themselves to SendableRegistry.
Definition: SendableHelper.h:28
Definition: SendableBuilder.h:23