/** * @return an instance of {@link DefaultNodeMainExecutor} that uses the * supplied {@link ExecutorService} */ public static NodeMainExecutor newDefault(ScheduledExecutorService executorService) { return new DefaultNodeMainExecutor(new DefaultNodeFactory(executorService), executorService); }
protected void setupSubscribers(ConnectedNode connectedNode) { leftEyeImageSubscriber = connectedNode.newSubscriber(STEREO_NAMESPACE + "left/" + IMAGE, CompressedImage._TYPE); rightEyeImageSubscriber = connectedNode.newSubscriber(STEREO_NAMESPACE + "right/" + IMAGE, CompressedImage._TYPE); steeringWheelStateSubscriber = connectedNode.newSubscriber("/drc_vehicle/hand_wheel/state", std_msgs.Float64._TYPE); handBrakeStateSubscriber = connectedNode.newSubscriber("/drc_vehicle/hand_brake/state", std_msgs.Float64._TYPE); gasPedalStateSubscriber = connectedNode.newSubscriber("/drc_vehicle/gas_pedal/state", std_msgs.Float64._TYPE); brakePedalStateSubscriber = connectedNode.newSubscriber("/drc_vehicle/brake_pedal/state", std_msgs.Float64._TYPE); timeSubscriber = connectedNode.newSubscriber("/clock",rosgraph_msgs.Clock._TYPE); }
private void setupPublishers(ConnectedNode connectedNode) { steeringWheelCommandPublisher = connectedNode.newPublisher("/drc_vehicle/hand_wheel/cmd", std_msgs.Float64._TYPE); handBrakeCommandPublisher = connectedNode.newPublisher("/drc_vehicle/hand_brake/cmd", std_msgs.Float64._TYPE); gasPedalCommandPublisher = connectedNode.newPublisher("/drc_vehicle/gas_pedal/cmd", std_msgs.Float64._TYPE); brakePedalCommandPublisher = connectedNode.newPublisher("/drc_vehicle/brake_pedal/cmd", std_msgs.Float64._TYPE); teleportInToCarPublisher = connectedNode.newPublisher("/drc_world/robot_enter_car", geometry_msgs.Pose._TYPE); teleportOutOfCarPublisher = connectedNode.newPublisher("/drc_world/robot_exit_car", geometry_msgs.Pose._TYPE); directionPublisher = connectedNode.newPublisher("/drc_vehicle/direction/cmd", Int8._TYPE); }
public void execute() { NodeConfiguration nodeConfiguration = RosTools.createNodeConfiguration(masterURI); nodeMainExecutor = DefaultNodeMainExecutor.newDefault(); nodeMainExecutor.execute(this, nodeConfiguration); }
/** * Creates a new {@link NodeConfiguration} for a {@link Node} that is only * accessible on the local host. * * @return a new {@link NodeConfiguration} for a private {@link Node} */ public static NodeConfiguration newPrivate() { return newPrivate(DEFAULT_MASTER_URI); }
@Override public void onStart(ConnectedNode connectedNode) { connectedNode.newServiceServer("add_two_ints", rosjava_test_msgs.AddTwoInts._TYPE, new ServiceResponseBuilder<rosjava_test_msgs.AddTwoIntsRequest, rosjava_test_msgs.AddTwoIntsResponse>() { @Override public void build(rosjava_test_msgs.AddTwoIntsRequest request, rosjava_test_msgs.AddTwoIntsResponse response) { response.setSum(request.getA() + request.getB()); } }); } }
/** * Creates a new {@link NodeConfiguration} for a publicly accessible * {@link Node}. * * @param host * the host that the {@link Node} will run on * @return a new {@link NodeConfiguration} for a publicly accessible * {@link Node} */ public static NodeConfiguration newPublic(String host) { return newPublic(host, DEFAULT_MASTER_URI); }
public void setConnectedNode(ConnectedNode connectedNode) { this.messageFactory = connectedNode.getTopicMessageFactory(); }
@Override public MessageFactory getTopicMessageFactory() { return nodeConfiguration.getTopicMessageFactory(); }
@Override public void run() { executeReturnCode = execute(masterUri, hostName, nodeName, remappingArguments); if (executeReturnCode != SUCCESS) { onError(connectedNode, new Throwable(nodeName + " execution error code " + executeReturnCode)); } // node execution has finished so we propagate the shutdown sequence only if we aren't already shutting down for other reasons if (!shuttingDown) { connectedNode.shutdown(); } } }.start();
public void shutdown() { nodeMainExecutor.shutdown(); } }
@Override public void run(NodeListener listener) { listener.onError(node, throwable); } });
@Override public void run(NodeListener listener) { listener.onShutdown(node); } }, MAX_SHUTDOWN_DELAY_DURATION, MAX_SHUTDOWN_DELAY_UNITS);
@Override public void run() { DefaultNodeMainExecutor.this.shutdown(); } }));
@Override public void run(NodeListener listener) { listener.onStart(connectedNode); } });
@Override public MessageSerializationFactory getMessageSerializationFactory() { return nodeConfiguration.getMessageSerializationFactory(); }
@Override public MessageFactory getServiceResponseMessageFactory() { return nodeConfiguration.getServiceResponseMessageFactory(); }
public void execute() { NodeConfiguration nodeConfiguration = RosTools.createNodeConfiguration(masterURI); nodeMainExecutor = DefaultNodeMainExecutor.newDefault(); nodeMainExecutor.execute(this, nodeConfiguration); }
private void setupSubscriber(ConnectedNode connectedNode) { cameraSubscriber = connectedNode.newSubscriber(topicName, sensor_msgs.CompressedImage._TYPE); }
public void shutdown() { nodeMainExecutor.shutdown(); } }