def init(self, args: Optional[List[str]] = None, *, initialize_logging: bool = True, domain_id: Optional[int] = None): """ Initialize ROS communications for a given context. :param args: List of command line arguments. """ # imported locally to avoid loading extensions on module import from rclpy.impl.implementation_singleton import rclpy_implementation global g_logging_ref_count with self._handle as capsule, self._lock: if domain_id is not None and domain_id < 0: raise RuntimeError( 'Domain id ({}) should not be lower than zero.' .format(domain_id)) rclpy_implementation.rclpy_init( args if args is not None else sys.argv, capsule, domain_id) if initialize_logging and not self._logging_initialized: with g_logging_configure_lock: g_logging_ref_count += 1 if g_logging_ref_count == 1: rclpy_implementation.rclpy_logging_configure(capsule) self._logging_initialized = True
def init(self, args: Optional[List[str]] = None): """ Initialize ROS communications for a given context. :param args: List of command line arguments. """ # imported locally to avoid loading extensions on module import from rclpy.impl.implementation_singleton import rclpy_implementation with self._handle as capsule, self._lock: rclpy_implementation.rclpy_init( args if args is not None else sys.argv, capsule)
def init(*, args=None): # This line changes what is in "_rclpy" to be the rmw implementation module that was imported. implementation_singleton.set_rclpy_implementation( rmw_implementation_tools.import_rmw_implementation()) # Now we can use _rclpy to call the implementation specific rclpy_init(). return _rclpy.rclpy_init(args if args is not None else sys.argv)
def init(self, args: Optional[List[str]] = None, *, initialize_logging: bool = True): """ Initialize ROS communications for a given context. :param args: List of command line arguments. """ # imported locally to avoid loading extensions on module import from rclpy.impl.implementation_singleton import rclpy_implementation global g_logging_ref_count with self._handle as capsule, self._lock: rclpy_implementation.rclpy_init(args if args is not None else sys.argv, capsule) if initialize_logging and not self._logging_initialized: with g_logging_configure_lock: g_logging_ref_count += 1 if g_logging_ref_count == 1: rclpy_implementation.rclpy_logging_configure(capsule) self._logging_initialized = True
def init(*, args: List[str] = None, context: Context = None) -> None: """ Initialize ROS communications for a given context. :param args: List of command line arguments. :param context: The context to initialize. If ``None``, then the default context is used (see :func:`.get_default_context`). """ context = get_default_context() if context is None else context # imported locally to avoid loading extensions on module import from rclpy.impl.implementation_singleton import rclpy_implementation return rclpy_implementation.rclpy_init(args if args is not None else sys.argv, context.handle)
def init(args=None): rclpy_rmw_env = os.getenv(RCLPY_IMPLEMENTATION_ENV_NAME, None) if rclpy_rmw_env is not None: available_rmw_implementations = rmw_implementation_tools.get_rmw_implementations( ) if rclpy_rmw_env not in available_rmw_implementations: logger = logging.getLogger('rclpy') logger.error( "The rmw implementation specified in 'RCLPY_IMPLEMENTATION={0}', " "is not one of the available implementations: {1}".format( rclpy_rmw_env, available_rmw_implementations)) raise InvalidRCLPYImplementation() rmw_implementation_tools.select_rmw_implementation(rclpy_rmw_env) # This line changes what is in "_rclpy" to be the rmw implementation module that was imported. implementation_singleton.set_rclpy_implementation( rmw_implementation_tools.import_rmw_implementation()) # Now we can use _rclpy to call the implementation specific rclpy_init(). return _rclpy.rclpy_init(args if args is not None else sys.argv)
def init(args=None): rclpy_rmw_env = os.getenv('RCLPY_IMPLEMENTATION', None) if rclpy_rmw_env is not None: available_rmw_implementations = rmw_implementation_tools.get_rmw_implementations() if rclpy_rmw_env not in available_rmw_implementations: logger = logging.getLogger('rclpy') logger.error( "The rmw implementation specified in 'RCLPY_IMPLEMENTATION={0}', " "is not one of the available implementations: {1}" .format(rclpy_rmw_env, available_rmw_implementations) ) raise InvalidRCLPYImplementation() rmw_implementation_tools.select_rmw_implementation(rclpy_rmw_env) # This line changes what is in "_rclpy" to be the rmw implementation module that was imported. implementation_singleton.set_rclpy_implementation( rmw_implementation_tools.import_rmw_implementation() ) # Now we can use _rclpy to call the implementation specific rclpy_init(). return _rclpy.rclpy_init(args if args is not None else sys.argv)
def init(*, args=None, context=None): context = get_default_context() if context is None else context # imported locally to avoid loading extensions on module import from rclpy.impl.implementation_singleton import rclpy_implementation return rclpy_implementation.rclpy_init( args if args is not None else sys.argv, context.handle)
def init(*, args=None): # imported locally to avoid loading extensions on module import from rclpy.impl.implementation_singleton import rclpy_implementation return rclpy_implementation.rclpy_init( args if args is not None else sys.argv)