Rock
the Robot Construction Kit
There are mainly four types of packages in Rock:
This page is an overview of these four types, and give pointer towards more information about how to create and manage them
Naming scheme and directory structures is detailed here
In all four cases, high-level information about the package (including dependencies w.r.t. other packages) is added to the manifest.xml file in the top directory of the package.
The C++ libraries are plain CMake packages. When developed in relation to Rock, you are encouraged to use the Rock CMake macros.
Note: These macros are meant as helpers for packages developed in Rock. However:
This is not a hard requirement. Using the CMake macros and the CMake provided by Rock only ensures that you are following the Rock guidelines on C++ library packages
C++ library packages can quickly be created using rock-create-lib. See this tutorial for detailed information.
Information about the package (including dependencies w.r.t. other packages) is added to the manifest.xml file in the top directory of the package.
Ruby libraries follow the general structure for RubyGem packages. It is detailed on the Rock guidelines on Ruby packages.
Information about the package (including dependencies w.r.t. other packages) is added to the manifest.xml file in the top directory of the package.
vizkit widget packages are C++ library packages that define Qt widgets, and export these widgets in a way that make them usable by vizkit, the Rock visualization library. Have a look at the tutorials and the associated documentation
vizkit 3D Plugin packages are C++ library packages that define plugins usable by vizkit’s Vizkit3DWidget, allowing to display data in a 3D view using OpenSceneGraph. Have a look at the tutorials and the associated documentation
oroGen projects are packages which contain a toplevel .orogen file which contain description of components. See this tutorial and the associated documentation for more information.