![]() |
New version of the WPILib Cookbook posted
There is a new version of the Robot Programming Cookbook posted on the WPILib project under the documents section. The example is (hopefully) substantially cleaned up. And it has a new section on writing command-based programs in C++ with a fairly extensive tutorial. I would highly encourage teams using Java to check it out. It makes writing complex robot programs much simpler and provides a "cookbook" method of organizing your code.
http://firstforge.wpi.edu/sf/docman/..._documentation In addition there is a sample program called GearsBot provided with Netbeans that illustrates the features as a sample. It is a much more complex robot with PID Subsystems and a fairly complex autonomous program. The version posted has a typo in it, so after you create the sample, just delete the line with the error in it that says: Subsystem.registerDefaultCommands(); then it will be identical to the code we used in the Kickoff Workshop talk. Brad |
Re: New version of the WPILib Cookbook posted
Thanks for this cookbook... it has helped us tremendously.
One question... in the example Command described, you get various subsystems using [Subsystem].getInstance(). In the Subsystem class there is not a static instance member, rather it is in the CommandBase. Do you recommend putting the static instance in the CommandBase or putting it in the Subsystem and writing a GetInstance() method on the Subsystem? Sample below. public class DriveWithJoystick extends CommandBase { Chassis m_chassis; public DriveWithJoystick() { m_chassis = Chassis.getInstance(); // not available... requires(m_chassis); // reserve the chassis subsystem } |
Re: New version of the WPILib Cookbook posted
Quote:
Brad |
Re: New version of the WPILib Cookbook posted
Quote:
- Oliver |
Re: New version of the WPILib Cookbook posted
Does the command based coding style work with c++? We got to the requires() part, and it says that Error: requires() undeclared. It is not recognizing it as a function. Do you know why? It works in the ExampleCommand.cpp, but not when I make my own DriveCommand.cpp.
|
| All times are GMT -5. The time now is 10:34. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi