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.
Organizes the RobotContainer and Subsystem initialization into different runtime environments, to allow for different IO implementations for different robots, and using different drivebase constants for different robots.
This also organizes Constants.java by making the robot automatically select between different states.
This will work as follows:
If the code is running on a real robot, run code for a real robot based on the specified robot in constants. If it is set to simulation bot on a real robot, the code will exit due to invalid configuration.
If the code is running on a laptop / a simulation, it will run code based on the specified robot, if the robot is specified as the comp or practice bot, it will assume that you are running a log replay. If it is specified as a simbot, it will run as a simulation, (aka run real robot code but with simulated hardware layers).