catkin.py
Go to the documentation of this file.
00001 #
00002 # License: BSD
00003 #   https://raw.github.com/robotics-in-concert/rocon_tools/license/LICENSE
00004 #
00005 
00006 ##############################################################################
00007 # Imports
00008 ##############################################################################
00009 
00010 from catkin_pkg.packages import find_packages
00011 
00012 ##############################################################################
00013 # Resources
00014 ##############################################################################
00015 
00016 
00017 def package_index_from_package_path(package_paths):
00018     """Find all packages on the given list of paths
00019 
00020     Iterates over the given list of paths in reverse order so that packages
00021     found in the paths at the beginning of the list get overlaid onto packages
00022     with the same name which were found in paths farther back in the list.
00023 
00024     The resulting dictionary is keyed by the package name (so packages with
00025     duplicate names are overlaid) and the values are the
00026     :py:class:`catkin_pkg.package.Package` class
00027 
00028     @note Is this actually implemented as a function in a general ros package?
00029 
00030     :param ros_package_path: list of paths to search
00031     :type ros_package_path: list
00032     :returns: dictionary of package objects keyed by name of the package
00033     :rtype: dict
00034     """
00035     result = {}
00036     for path in reversed(package_paths):
00037         for unused_package_path, package in find_packages(path).items():
00038             result[package.name] = package
00039     return result


rocon_python_utils
Author(s): Daniel Stonier
autogenerated on Fri May 2 2014 10:35:39