def test_resource_name(): from genmsg import resource_name assert 'foo/bar' == resource_name('foo', 'bar') assert 'bar' == resource_name('foo', 'bar', my_pkg='foo') assert 'foo/bar' == resource_name('foo', 'bar', my_pkg='bar') assert 'foo/bar' == resource_name('foo', 'bar', my_pkg='') assert 'foo/bar' == resource_name('foo', 'bar', my_pkg=None)
def rosmsg_search(rospack, mode, base_type): """ Iterator for all packages that contain a message matching base_type :param base_type: message base type to match, e.g. 'String' would match std_msgs/String, ``str`` """ for p, path in iterate_packages(rospack, mode): if os.path.isfile(os.path.join(path, "%s%s"%(base_type, mode))): yield genmsg.resource_name(p, base_type)
def rosmsg_search(rospack, mode, base_type): """ Iterator for all packages that contain a message matching base_type :param base_type: message base type to match, e.g. 'String' would match std_msgs/String, ``str`` """ for p, path in iterate_packages(rospack, mode): if os.path.isfile(os.path.join(path, "%s%s" % (base_type, mode))): yield genmsg.resource_name(p, base_type)
def list_types(package, mode=MODE_MSG): """ Lists msg/srvs contained in package :param package: package name, ``str`` :param mode: MODE_MSG or MODE_SRV. Defaults to msgs, ``str`` :returns: list of msgs/srv in package, ``[str]`` """ rospack = rospkg.RosPack() if mode == MODE_MSG: subdir = 'msg' elif mode == MODE_SRV: subdir = 'srv' else: raise ValueError('Unknown mode for list_types: %s'%mode) path = os.path.join(rospack.get_path(package), subdir) return [genmsg.resource_name(package, t) for t in _list_types(path, subdir, mode)]
def list_types(package, mode=MODE_ACTION): """ Lists msg/srvs contained in package :param package: package name, ``str`` :param mode: MODE_ACTION. Defaults to msgs, ``str`` :returns: list of msgs/srv in package, ``[str]`` """ rospack = rospkg.RosPack() if mode == MODE_ACTION: subdir = 'action' else: raise ValueError('Unknown mode for list_types: %s' % mode) path = os.path.join(rospack.get_path(package), subdir) rospy.loginfo('list_types package={} mode={} path={}'.format(package, mode, path)) return [genmsg.resource_name(package, t) for t in _list_types(path, subdir, mode)]
def list_files(package, subdir, file_extension='.launch'): """ #TODO: Come up with better name of the method. Taken from rosmsg. Lists files contained in the specified package @param package: package name, ``str`` @param file_extension: Defaults to '.launch', ``str`` :returns: list of msgs/srv in package, ``[str]`` """ if subdir == None or subdir == '': raise ValueError('Invalid package subdir = {}'.format(subdir)) rospack = rospkg.RosPack() path = os.path.join(rospack.get_path(package), subdir) return [genmsg.resource_name(package, t) for t in RqtRoscommUtil._list_types( path, file_extension)]
def list_files(package, subdir, file_extension='.launch'): """ #TODO: Come up with better name of the method. Taken from rosmsg. Lists files contained in the specified package @param package: package name, ``str`` @param file_extension: Defaults to '.launch', ``str`` :returns: list of msgs/srv in package, ``[str]`` """ if subdir == None or subdir == '': raise ValueError('Invalid package subdir = {}'.format(subdir)) rospack = rospkg.RosPack() path = os.path.join(rospack.get_path(package), subdir) return [ genmsg.resource_name(package, t) for t in RqtRoscommUtil._list_types(path, file_extension) ]