class ROSLaunchParent(object):
Constructor: ROSLaunchParent(run_id, roslaunch_files, is_core, port, ...)
ROSLaunchParent represents the main 'parent' roslaunch process. It is responsible for loading the launch files, assigning machines, and then starting up any remote processes. The __main__ method delegates most of runtime to ROSLaunchParent.
This must be called from the Python Main thread due to signal registration.
Method | __init__ |
@param run_id: UUID of roslaunch session @type run_id: str @param roslaunch_files: list of launch configuration |
Method | shutdown |
Stop the parent roslaunch. |
Method | spin |
Run the parent roslaunch until exit |
Method | spin |
Run the parent roslaunch event loop once |
Method | start |
Run the parent roslaunch. |
Instance Variable | config |
Undocumented |
Instance Variable | force |
Undocumented |
Instance Variable | force |
Undocumented |
Instance Variable | force |
Undocumented |
Instance Variable | is |
Undocumented |
Instance Variable | is |
Undocumented |
Instance Variable | local |
Undocumented |
Instance Variable | logger |
Undocumented |
Instance Variable | master |
Undocumented |
Instance Variable | num |
Undocumented |
Instance Variable | pm |
Undocumented |
Instance Variable | port |
Undocumented |
Instance Variable | process |
Undocumented |
Instance Variable | remote |
Undocumented |
Instance Variable | roslaunch |
Undocumented |
Instance Variable | roslaunch |
Undocumented |
Instance Variable | run |
Undocumented |
Instance Variable | runner |
Undocumented |
Instance Variable | server |
Undocumented |
Instance Variable | show |
Undocumented |
Instance Variable | sigint |
Undocumented |
Instance Variable | sigterm |
Undocumented |
Instance Variable | timeout |
Undocumented |
Instance Variable | verbose |
Undocumented |
Method | _init |
Initialize the remote process runner, if required. Subroutine of _start_remote, separated out for easier testing |
Method | _init |
Initialize the roslaunch runner |
Method | _load |
Undocumented |
Method | _start |
load config, start XMLRPC servers and process monitor |
Method | _start |
Start the process monitor |
Method | _start |
Initializes and runs the remote process runner, if required |
Method | _start |
Initialize the roslaunch parent XML-RPC server |
Method | _stop |
Tear down server and process monitor. Not multithread safe. |
Instance Variable | _shutting |
Undocumented |
@param run_id: UUID of roslaunch session @type run_id: str @param roslaunch_files: list of launch configuration
files to load
@type roslaunch_files: [str] @param is_core bool: if True, this launch is a roscore
instance. This affects the error behavior if a master is already running (i.e. it fails).
@type is_core: bool @param process_listeners: (optional) list of process listeners
to register with process monitor once launch is running
@type process_listeners: [L{roslaunch.pmon.ProcessListener}] @param port: (optional) override master port number from what is specified in the master URI. @type port: int @param verbose: (optional) print verbose output @type verbose: boolean @param show_summary: (optional) whether to show a summary or not @type show_summary: boolean @param force_screen: (optional) force output of all nodes to screen @type force_screen: boolean @param force_log: (optional) force output of all nodes to log @type force_log: boolean @param is_rostest bool: if True, this launch is a rostest
instance. This affects validation checks.
@type is_rostest: bool @param num_workers: If this is the core, the number of worker-threads to use. @type num_workers: int @param timeout: If this is the core, the socket-timeout to use. @type timeout: Float or None @throws RLException @param master_logger_level: Specify roscore's rosmaster.master logger level, use default if it is False. @type master_logger_level: str or False @param force_required: (optional) whether to make all nodes required @type force_required: boolean @param sigint_timeout: The SIGINT timeout used when killing nodes (in seconds). @type sigint_timeout: float @param sigterm_timeout: The SIGTERM timeout used when killing nodes if SIGINT does not stop the node (in seconds). @type sigterm_timeout: float @raise RLException: If sigint_timeout or sigterm_timeout are nonpositive.
Run the parent roslaunch.
@param auto_terminate: stop process monitor once there are no more processes to monitor (default True). This defaults to True, which is the command-line behavior of roslaunch. Scripts may wish to set this to False if they wish to keep the roslauch infrastructure up regardless of processes being monitored.