Closed rhauch closed 10 years ago
Master is getting a bit cluttered, can we branch it and keep the old stuff on the branch? Then we can have just the competition code on the master branch.
It's not really a good idea to use branches for that purpose. It would be better to just create another project folder for the competition robot.
Part of the difficulty is that the WPILib library (and the Ant build scripts) make it really difficult to put reusable code into our own library. (This is really easy in Eclipse, but getting WPI's build scripts to recognize that is a much harder task.) If we could do this, then we could put some of our classes like our Joystick
and FlightStick
into this library so they could be reused on multiple robot programs.
What benefits does the command-style produce? I haven't really looked at it, but from what I gleamed while trawling through PrototypeKicker
, it seems like more of a hassle. It would make sense if we intended to do more in autonomous mode, but for teleop, I would think methods would suffice.
The command-style is a lot more flexible. Yes, on the PrototypeKicker
it was overkill, and added a lot of complexity than benefits.
See the PrototypeCommandDriveRobot's README for an overview of the command pattern and its benefits.
We absolutely want to use the command-style for our competitive robot.
It might be easiest to copy the PrototypeCommandDriveRobot
project, change the name, then configure the DriveTrain to use the correct motor controllers, use the proper joystick(s), buttons, etc. The commands will likely change, though I wouldn't remove any of them yet.
It might even be worth creating a separate robot project for the original robot, or perhaps renaming the PrototypeCommandDriveRobot
for this purpose. It will have different controllers, inputs, commands, etc. than the competition robot.
Rebased and merged @Zabot's PR (see above). Great work.
So far we have several prototype programs and one program used for testing. We need to create a program that we'll use for our competition robot, and it should use the command-style design.