blob: 0af8ca320511a474ae536fa5a0eb57481d81c7d4 [file] [log] [blame]
Niko Sohmers3860f8a2024-01-12 21:05:19 -08001include "frc971/control_loops/profiled_subsystem.fbs";
Nathan Leongdd728002024-02-03 15:26:53 -08002include "frc971/control_loops/catapult/catapult_goal.fbs";
Niko Sohmers3860f8a2024-01-12 21:05:19 -08003
4namespace y2024.control_loops.superstructure;
5
Niko Sohmers58e64c82024-01-14 12:49:54 -08006// Represents goal for intake rollers
7enum IntakeRollerGoal : ubyte {
8 NONE = 0,
9 SPIT = 1,
10 INTAKE = 2,
Niko Sohmers3860f8a2024-01-12 21:05:19 -080011}
12
Niko Sohmers58e64c82024-01-14 12:49:54 -080013// Represents goal for pivot on intake
14enum IntakePivotGoal : ubyte {
15 EXTENDED = 0,
Maxwell Hendersonbf04fb62024-01-19 17:56:07 -080016 RETRACTED = 1,
17}
18
Niko Sohmers78f71352024-02-02 16:47:40 -080019// Represents goal of transfer rollers
20// TRANSFER_IN is for transfering game piece in from the intake to the shooter
21// TRANSFER_OUT is for transfering game piece out to the intake for spitting
22enum TransferRollerGoal : ubyte {
23 NONE = 0,
24 TRANSFER_IN = 1,
25 TRANSFER_OUT = 2,
26}
27
Niko Sohmers58e64c82024-01-14 12:49:54 -080028table Goal {
29 intake_roller_goal:IntakeRollerGoal (id: 0);
30 intake_pivot_goal:IntakePivotGoal (id: 1);
Maxwell Hendersonbf04fb62024-01-19 17:56:07 -080031
Nathan Leongdd728002024-02-03 15:26:53 -080032 catapult_goal:frc971.control_loops.catapult.CatapultGoal (id: 2);
Niko Sohmers78f71352024-02-02 16:47:40 -080033
34 transfer_roller_goal:TransferRollerGoal (id: 3);
Niko Sohmers58e64c82024-01-14 12:49:54 -080035}
Niko Sohmers3860f8a2024-01-12 21:05:19 -080036
37root_type Goal;