Switch between alpha and comp bot #28
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
this adds selecting between the alpha and comp bot code. as we want to keep alpha around for drive practice and the state machines and general categories of subsystems will be similar if not the same, i wanted to be able to just create a different subsystem (ie lindexer vs spindexer) depending on which robot edition it was.
to do that, this creates interfaces for the indexer (lindexer vs spindexer), intake (fintake vs lintake), and shooter (shooter vs turret) and passes those into the superstructure instead, and then within those subsystems we can figure out how we want to implement stuff (f.e. in the intake command the lintake is going to have to extend as opposed to the fintake, but that can just be dealt with in the subsystem itself and the superstructure doesn't need to worry about that kind of thing)
one special case is the climber, which doesn't exist on the alpha bot. this deals with this by just creating a no-op if it's alpha. i've decided that the climber (along with swerve + led's) is going to live outside the superstructure as theoretically we should be able to climb whenever (like if we want to shoot one last time while we're extending climb), which is why it's a little different
i'm not convinced this is the prettiest way to do this but it's pretty similar to how 6328/5940 switch between comp/dev bots
the base is bring-up because i branched off of that and want the actual changed files to be a bit clearer but could be merged whenever (as long as it's before comp subsystem work starts)