Skip to content

Commit cd5f339

Browse files
committed
Basic outline
1 parent 98a7e84 commit cd5f339

File tree

2 files changed

+70
-0
lines changed

2 files changed

+70
-0
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package frc.robot.subsystems.funnel;
2+
3+
import org.littletonrobotics.junction.AutoLog;
4+
import org.strykeforce.telemetry.TelemetryService;
5+
6+
public interface FunnelIo {
7+
8+
@AutoLog
9+
public static class FunnelIoInputs{
10+
11+
}
12+
13+
public default void updateInputs(FunnelIoInputs inputs) {}
14+
15+
public default void registerWith(TelemetryService telemetryService) {}
16+
}
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
package frc.robot.subsystems.funnel;
2+
3+
import java.util.Set;
4+
5+
import org.strykeforce.telemetry.measurable.MeasurableSubsystem;
6+
import org.strykeforce.telemetry.measurable.Measure;
7+
8+
import frc.robot.standards.OpenLoopSubsystem;
9+
10+
public class FunnelSubsystem extends MeasurableSubsystem implements OpenLoopSubsystem{
11+
12+
// Private Variables
13+
private final FunnelIo io;
14+
15+
public FunnelState curState = FunnelState.Idle;
16+
17+
// Constructor
18+
public FunnelSubsystem(FunnelIo io){
19+
this.io = io;
20+
}
21+
22+
public FunnelState getState(){
23+
return curState;
24+
}
25+
26+
@Override
27+
public void periodic(){
28+
switch (curState){
29+
case Idle:
30+
break;
31+
case PickingUp:
32+
break;
33+
case Held:
34+
break;
35+
}
36+
}
37+
38+
@Override
39+
public Set<Measure> getMeasures() {
40+
return null;
41+
}
42+
43+
public enum FunnelState{
44+
Idle,
45+
PickingUp,
46+
Held
47+
}
48+
49+
@Override
50+
public void setPercent(double pct) {
51+
52+
}
53+
54+
}

0 commit comments

Comments
 (0)