ICub coding basics: Difference between revisions
Jump to navigation
Jump to search
(→Examples of modules: clean up) |
(→See also: remove dead links) |
||
Line 32: | Line 32: | ||
* [http://eris.liralab.it/wiki/How_to_write_a_module How to write a module] | * [http://eris.liralab.it/wiki/How_to_write_a_module How to write a module] | ||
* [http://eris.liralab.it/wiki/Software_interface:_standard_port_names_for_hardware_devices Software interface: standard port names for hardware devices] | * [http://eris.liralab.it/wiki/Software_interface:_standard_port_names_for_hardware_devices Software interface: standard port names for hardware devices] | ||
Revision as of 13:30, 3 August 2011
Refer to RobotCub software to learn how to install, compile and update RobotCub software with Subversion (SVN). Below we will link to tutorials that are useful for people starting up with iCub and YARP coding.
General guides
Highly recommended:
- http://eris.liralab.it/wiki/Summary_of_iCub_Software_Development_Guidelines
- http://eris.liralab.it/wiki/ICub_Documentation_Guidelines
- http://eris.liralab.it/wiki/ICub_File_Organization_Guidelines
Specific tutorials
- Tutorials on motor commands and basic image processing: http://eris.liralab.it/wiki/ICub_Tutorials
Resource Finder
- http://eris.liralab.it/wiki/Resource_finder_overview
- RFModule class documentation (new version of Module class): http://eris.liralab.it/yarpdoc/d9/d26/classyarp_1_1os_1_1RFModule.html
- Using the RFModule helper class to write a program: http://eris.liralab.it/iCub/main/dox/html/icub_resource_finder_basic.html and http://eris.liralab.it/iCub/dox/main/html/icub_resource_finder_advanced.html
YARP ports
- basic: http://eris.liralab.it/yarpdoc/df/d05/note_ports.html
- advanced: http://eris.liralab.it/yarpdoc/db/dfb/port_expert.html
- Bottle class, useful for exchanging data among modules: http://eris.liralab.it/yarpdoc/d3/d3e/classyarp_1_1os_1_1Bottle.html#_details
Examples of modules
The following are good examples of modules from the iCub repository that are generally compliant with iCub configuration guidelines (RFModule class), coding standards (configuration, graceful shut-down, thread-based execution, run-time user interaction) and documentation standards:
- demoModule
- http://eris.liralab.it/wiki/The_myModule_Example (referred to at the bottom of the Summary of iCub Software Development Guidelines)