• Diff for "Stacks"
Differences between revisions 21 and 22
Revision 21 as of 2009-09-28 21:21:28
Size: 1415
Editor: KenConley
Comment:
Revision 22 as of 2009-09-28 21:23:47
Size: 1361
Editor: KenConley
Comment:
Deletions are marked like this. Additions are marked like this.
Line 14: Line 14:

== Stack Procedures ==

 * [[/WorkOnTrunkStack]]

ROS Filesystem Concepts: Packages | Metapackages | Manifest | msg | srv

Packages in ROS are organized into ROS Stacks. Whereas the goal of Packages is to create minimal collections of code for easy reuse, the goal of stacks is to simplify the process of code sharing. Stacks are the primary mechanism is ROS for distributing software. Each Stack has an associated version and can declare dependencies on other stacks.These dependencies also declare a version number, which provides greater stability in development.

Stacks collect packages that collectively provide functionality, such as a navigation stack or a manipulation stack. Unlike a traditional software library that you link against at compile time, these Stacks can also provide this functionality at runtime via ROS Topics and Services.

Stacks are easy to create by hand. A Stack is simply a directory descended from ROS_ROOT or ROS_PACKAGE_PATH (see ROS Environment Variables) that has a stack.xml file in it. Any Packages in this directory are considered to be part of the Stack.

Please see the Stack Manifest section for documentation on how to write stack.xml files.

Stack Tools

rosstack is the primary ROS tool for interacting with ROS Stacks. It is the Stack-level analogue of the rospack tool for Packages.

Wiki: Stacks (last edited 2013-10-18 23:01:47 by WilliamWoodall)