24 template <
class... MotorControllers>
26 MotorControllers&... motorControllers);
28 std::vector<std::reference_wrapper<MotorController>>&& motorControllers);
33 void Set(
double speed)
override;
35 double Get()
const override;
44 bool m_isInverted =
false;
45 std::vector<std::reference_wrapper<MotorController>> m_motorControllers;
Allows multiple MotorController objects to be linked together.
Definition: MotorControllerGroup.h:22
double Get() const override
Common interface for getting the current set speed of a motor controller.
void StopMotor() override
Common interface to stop the motor until Set is called again.
MotorControllerGroup & operator=(MotorControllerGroup &&)=default
void SetVoltage(units::volt_t output) override
Sets the voltage output of the MotorController.
MotorControllerGroup(MotorController &motorController, MotorControllers &... motorControllers)
Definition: MotorControllerGroup.inc:15
void Set(double speed) override
Common interface for setting the speed of a motor controller.
bool GetInverted() const override
Common interface for returning the inversion state of a motor controller.
MotorControllerGroup(MotorControllerGroup &&)=default
void InitSendable(wpi::SendableBuilder &builder) override
Initializes this Sendable object.
MotorControllerGroup(std::vector< std::reference_wrapper< MotorController > > &&motorControllers)
void SetInverted(bool isInverted) override
Common interface for inverting direction of a motor controller.
void Disable() override
Common interface for disabling a motor.
Interface for motor controlling devices.
Definition: MotorController.h:14
Definition: SendableBuilder.h:18
A helper class for use with objects that add themselves to SendableRegistry.
Definition: SendableHelper.h:19
Interface for Sendable objects.
Definition: Sendable.h:16
Definition: AprilTagFieldLayout.h:22