Files
2026KPopRobotHunters/src/main/java/frc4388/robot/subsystems/intake/IntakeIO.java
T
2026-02-27 20:19:01 -08:00

49 lines
1.8 KiB
Java

package frc4388.robot.subsystems.intake;
import static edu.wpi.first.units.Units.Amps;
import static edu.wpi.first.units.Units.Rotations;
import static edu.wpi.first.units.Units.RotationsPerSecond;
import org.littletonrobotics.junction.AutoLog;
import edu.wpi.first.units.measure.Acceleration;
import edu.wpi.first.units.measure.Angle;
import edu.wpi.first.units.measure.Current;
import edu.wpi.first.units.measure.Velocity;
public interface IntakeIO {
@AutoLog
public class IntakeState {
boolean retractedLimit = false;
Angle armAngle = Rotations.of(0);
Angle armTargetAngle = Rotations.of(0);
Current armMotorCurrent = Amps.of(0);
@SuppressWarnings("rawtypes")
Velocity armMotorVelocity;
@SuppressWarnings("rawtypes")
Acceleration armMotorAcceleration;
// Angle shooterPitch = Rotations.of(0);
// Angle shooterTargetPitch = Rotations.of(0);
// Current pitchMotorCurrent = Amps.of(0);
double rollerOutput = 0;
double rollerTargetOutput = 0;
Current rollerMotorCurrent = Amps.of(0);
// LinearVelocity feederVelocity = InchesPerSecond.of(0);
// LinearVelocity feederTargetVelocity = InchesPerSecond.of(0);
// Current feederMotorCurrent = Amps.of(0);
}
// public default void setShooterAngle(ShooterState state, Angle angle) {}
// public default void setShooterPitch(ShooterState state, Angle angle) {}
public default void setArmAngle(IntakeState state, Angle angle) {}
public default void testSetArmAgle(IntakeState state, Angle angle){}
public default void stopArm() {}
public default void setRollerOutput(IntakeState state, double rollerOutput) {}
public default void armOutput(double percentOutput) {}
public default void updateInputs(IntakeState state) {}
public default void updateGains() {}
}