The provided concert_master.launch arguments that can be configured by a regular roslaunch include of this launcher. The arguments should be fairly self explanatory (we will formally detail this in the future when it is more stable).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 | <launch>
<!-- ******************************* Arguments ******************************* -->
<!-- Concert -->
<arg name="concert_name" default="Pirate Concert" doc="concert name"/>
<arg name="concert_icon" default="rocon_icons/rocon.png" doc="concert icon path in resource pair. e.g)rocon_icons/rocon.png"/>
<arg name="concert_description" default="Pirates in concert." doc="Describe concert"/>
<!-- Gateways -->
<arg name="hub_port" default="6380" doc="port for rocon hub redis"/>
<arg name="hub_uri" default="http://localhost:6380" doc="gateway hub configuration"/>
<arg name="gateway_watch_loop_period" default="2" doc="Polling period for multimaster advertising/flipping"/>
<arg name="gateway_disable_uuids" default="false" doc="manage unique naming of multiple gateways yourself"/>
<arg name="gateway_network_interface" default="$(optenv GATEWAY_NETWORK_INTERFACE)" doc="If you have multiple network interfaces and want to lock it on one (e.g. 'eth0')"/>
<arg name="gateway_unavailable_timeout" default="10" doc="how long before a concert client is flagged as missing when it drops off the wireless"/>
<!-- Zeroconf -->
<arg name="disable_zeroconf" default="false" doc="It is required process to configure both hub and gateway. Configures rocon_hub zeroconf param and gateway disable_conf param.(e.g docker does not support zeroconf properly"/>
<arg name="hub_zeroconf" if="$(arg disable_zeroconf)" value="false"/>
<arg name="hub_zeroconf" unless="$(arg disable_zeroconf)" value="true"/>
<!-- Conductor -->
<arg name="conductor_auto_invite" default="true" doc="invite clients automatically?"/>
<arg name="conductor_local_clients_only" default="false" doc="conductor invites only local clients"/>
<!-- Service Manager -->
<arg name="services" default="" doc="service list resource location. e.g. concert_tutorial/tutorial.services" />
<arg name="default_auto_enable_services" default="[]" doc="autoenable services, e.g. [admin, initialisation] services which auto enabled on start up or 'all' to enable all services"/>
<arg name="disable_cache" default="true" doc="whether reading solution configuration and service profile from cache or default"/>
<!-- Interactions -->
<arg name="enable_rosbridge" default="false" doc="start rosbridge or not"/>
<arg name="rosbridge_address" default="localhost" doc="rosbridge address for rocon_interactions"/>
<arg name="rosbridge_port" default="9090" doc="rosbridge port for rocon_interactions"/>
<arg name="webserver_address" default="webapp.robotconcert.org" doc="webserver address for webapps in rocon_interactions"/>
<!-- Schedulers
- preemptive_compatibility_tree : concert_schedulers/preemptive_compatibility_tree_scheduler.launch
- compatibility_tree : concert_schedulers/compatibility_tree_scheduler.launch
- simple : concert_schedulers/simple_scheduler.launch
-->
<arg name="scheduler_type" default="compatibility_tree" doc="available scheudlers : [preemptive_compatibility_tree, compatibility_tree, simple]"/>
<group ns="concert">
<!-- ****************************** Parameters ***************************** -->
<param name="name" value="$(arg concert_name)"/>
<param name="description" value="$(arg concert_description)"/>
<param name="icon" value="$(arg concert_icon)"/>
<!-- ******************************** Master ******************************* -->
<node pkg="rocon_master_info" type="master.py" name="master"/>
<!-- ***************************** Service Manager *************************** -->
<include file="$(find concert_service_manager)/launch/service_manager.launch">
<arg name="concert_name" value="$(arg concert_name)"/>
<arg name="services" value="$(arg services)" />
<arg name="default_auto_enable_services" value="$(arg default_auto_enable_services)" />
<arg name="disable_cache" value="$(arg disable_cache)"/>
</include>
<!-- ***************************** Software Farmer *************************** -->
<include file="$(find concert_software_farmer)/launch/software_farmer.launch"/>
<!-- ****************************** Conductor ****************************** -->
<include file="$(find concert_conductor)/launch/conductor.launch">
<arg name="auto_invite" value="$(arg conductor_auto_invite)" />
<arg name="local_clients_only" value="$(arg conductor_local_clients_only)" />
</include>
<!-- ****************************** Conductor Graph to String ****************************** -->
<node pkg="concert_utilities" type="conductor_graph_to_string.py" name="concert_conductor_graph_to_string"/>
<!-- ****************************** Scheduler ****************************** -->
<include file="$(find concert_schedulers)/launch/$(arg scheduler_type)_scheduler.launch"/>
<!-- **************************** Interactions ***************************** -->
<node pkg="rocon_interactions" type="interactions_manager.py" name="interactions">
<param name="rosbridge_address" value="$(arg rosbridge_address)"/>
<param name="rosbridge_port" value="$(arg rosbridge_port)"/>
<param name="webserver_address" value="$(arg webserver_address)"/>
</node>
<!-- ******************************** Hub ********************************** -->
<include file="$(find rocon_hub)/launch/hub.launch">
<arg name="hub_name" value="$(arg concert_name)" />
<arg name="hub_port" value="$(arg hub_port)" />
<arg name="external_shutdown" value="true"/> <!-- let the conductor shut it down -->
<arg name="gateway_unavailable_timeout" value="$(arg gateway_unavailable_timeout)"/>
<arg name="zeroconf" value="$(arg hub_zeroconf)"/>
</include>
<!-- ******************************** Gateway ******************************** -->
<node pkg="rocon_gateway" type="gateway.py" name="gateway">
<rosparam command="load" file="$(find rocon_gateway)/param/default.yaml"/>
<rosparam command="load" file="$(find rocon_gateway)/param/default_blacklist.yaml"/>
<rosparam param="hub_whitelist" subst_value="True">["$(arg hub_uri)"]</rosparam>
<param name="hub_uri" value="$(arg hub_uri)"/>
<param name="name" value="$(arg concert_name)"/>
<param name="firewall" value="false"/>
<param name="watch_loop_period" value="$(arg gateway_watch_loop_period)"/>
<param name="disable_uuids" value="$(arg gateway_disable_uuids)"/>
<param name="network_interface" value="$(arg gateway_network_interface)"/>
<param name="external_shutdown" value="true"/> <!-- let the conductor shut this node down -->
<param name="disable_zeroconf" value="$(arg disable_zeroconf)"/>
</node>
<!-- ****************************** Zeroconf ******************************* -->
<group unless="$(arg disable_zeroconf)">
<node ns="zeroconf" pkg="zeroconf_avahi" type="zeroconf" name="zeroconf">
<rosparam param="services" subst_value="true">
[ { name: "$(arg concert_name)", type: _concert-master._tcp, port: 11311, domain: local, description: "$(arg concert_description)" } ]
</rosparam>
</node>
</group>
</group>
<!-- ****************************** Rosbridge ******************************** -->
<group if="$(arg enable_rosbridge)">
<include file="$(find rosbridge_server)/launch/rosbridge_websocket.launch">
<arg name="address" value="$(arg rosbridge_address)"/>
<arg name="port" value="$(arg rosbridge_port)"/>
</include>
</group>
</launch>
|