partialnode.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:roshelper 作者: wallarelvo 项目源码 文件源码
def service(self, *upper_args, **kwargs):
        if isinstance(upper_args[0], str):
            service_name, srv_type = upper_args

            def __decorator(func):
                def __inner(request):
                    n_args = func.func_code.co_argcount
                    if "self" in func.func_code.co_varnames[:n_args]:
                        return self.__class_service(func, request, service_name)
                    else:
                        return self.__function_service(func, request, service_name)

                args = [service_name, srv_type, __inner]
                service = rospy.Service(*args, **kwargs)
                self.services.append(service)
                return __inner
            return __decorator
        else:
            raise ValueError("First argument to service must be service name as str")
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号