@Override public void run() { while (true) { if (handDesiredConfigurationMessageSubscriber.isNewDesiredConfigurationAvailable()) { HandDesiredConfigurationMessage ihmcMessage = handDesiredConfigurationMessageSubscriber.pollMessage(); rosHandCommunicator.sendHandCommand(ihmcMessage); } } } }
@Override public void onNewDataMessage(Subscriber<HandDesiredConfigurationMessage> subscriber) { receivedPacket(subscriber.takeNextData()); }
public RobotiqControlThread(RobotSide robotSide, CloseableAndDisposableRegistry closeableAndDisposableRegistry) { super(robotSide); this.robotSide = robotSide; robotiqHand = new RobotiqHandCommunicator(robotSide); handDesiredConfigurationMessageSubscriber = new HandDesiredConfigurationMessageSubscriber(robotSide); manualHandControlProvider = new ManualHandControlProvider(robotSide); jointAngleCommunicator = new HandJointAngleCommunicator(robotSide, packetCommunicator, closeableAndDisposableRegistry); packetCommunicator.attachListener(HandDesiredConfigurationMessage.class, handDesiredConfigurationMessageSubscriber); packetCommunicator.attachListener(ManualHandControlPacket.class, manualHandControlProvider); }
HandDesiredConfigurationMessageSubscriber subscriber = new HandDesiredConfigurationMessageSubscriber(robotSide); handDesiredConfigurationMessageSubscribers.put(robotSide, subscriber); ValkyrieHandFingerTrajectoryMessageSubscriber valkyrieHandFingerTrajectoryMessageSubscriber = new ValkyrieHandFingerTrajectoryMessageSubscriber(robotSide);
@Override public void run() { while (true) { if (handDesiredConfigurationMessageSubscriber.isNewDesiredConfigurationAvailable()) { HandDesiredConfigurationMessage ihmcMessage = handDesiredConfigurationMessageSubscriber.pollMessage(); rosHandCommunicator.sendHandCommand(ihmcMessage); } } } }
HandDesiredConfigurationMessageSubscriber handDesiredConfigurationSubscriber = new HandDesiredConfigurationMessageSubscriber(robotSide); handDesiredConfigurationMessageSubscribers.put(robotSide, handDesiredConfigurationSubscriber); if (globalDataProducer != null)
@Override public void run() { while (true) { if (handDesiredConfigurationMessageSubscriber.isNewDesiredConfigurationAvailable()) { HandDesiredConfigurationMessage ihmcMessage = handDesiredConfigurationMessageSubscriber.pollMessage(); rosHandCommunicator.sendHandCommand(ihmcMessage); } } } }
HandDesiredConfigurationMessageSubscriber handDesiredConfigurationSubscriber = new HandDesiredConfigurationMessageSubscriber(robotSide); handDesiredConfigurationMessageSubscribers.put(robotSide, handDesiredConfigurationSubscriber); if (realtimeRos2Node != null)
private void checkForNewHandDesiredConfigurationRequested() { for (RobotSide robotSide : RobotSide.values) { if (handDesiredConfigurationMessageSubscribers.get(robotSide).isNewDesiredConfigurationAvailable()) { HandConfiguration handDesiredConfiguration = HandConfiguration.fromByte(handDesiredConfigurationMessageSubscribers.get(robotSide).pollMessage() .getDesiredHandConfiguration()); ValkyrieFingerSetController controller = fingerSetControllers.get(robotSide); if (controller == null) continue; controller.getDesiredHandConfiguration(handDesiredConfiguration); } } }
public RobotiqControlThread(String robotName, RobotSide robotSide, CloseableAndDisposableRegistry closeableAndDisposableRegistry) { super(robotSide); this.robotSide = robotSide; robotiqHand = new RobotiqHandCommunicator(robotSide); handDesiredConfigurationMessageSubscriber = new HandDesiredConfigurationMessageSubscriber(robotSide); manualHandControlProvider = new ManualHandControlProvider(robotSide); MessageTopicNameGenerator publisherTopicNameGenerator = ControllerAPIDefinition.getPublisherTopicNameGenerator(robotName); MessageTopicNameGenerator subscriberTopicNameGenerator = ControllerAPIDefinition.getSubscriberTopicNameGenerator(robotName); IHMCRealtimeROS2Publisher<HandJointAnglePacket> handJointAnglePublisher = ROS2Tools.createPublisher(realtimeRos2Node, HandJointAnglePacket.class, publisherTopicNameGenerator); jointAngleCommunicator = new HandJointAngleCommunicator(robotSide, handJointAnglePublisher, closeableAndDisposableRegistry); ROS2Tools.createCallbackSubscription(realtimeRos2Node, HandDesiredConfigurationMessage.class, subscriberTopicNameGenerator, handDesiredConfigurationMessageSubscriber); ROS2Tools.createCallbackSubscription(realtimeRos2Node, ManualHandControlPacket.class, subscriberTopicNameGenerator, manualHandControlProvider); realtimeRos2Node.spin(); }
if (handDesiredConfigurationMessageSubscriber.isNewDesiredConfigurationAvailable()) HandDesiredConfigurationMessage packet = handDesiredConfigurationMessageSubscriber.pollMessage(); HandConfiguration state = packet.getHandDesiredConfiguration();
HandDesiredConfigurationMessageSubscriber handDesiredConfigurationSubscriber = new HandDesiredConfigurationMessageSubscriber(robotSide); handDesiredConfigurationMessageSubscribers.put(robotSide, handDesiredConfigurationSubscriber);
if (handDesiredConfigurationMessageSubscriber.isNewDesiredConfigurationAvailable()) HandDesiredConfigurationMessage packet = handDesiredConfigurationMessageSubscriber.pollMessage(); HandConfiguration state = HandConfiguration.fromByte(packet.getDesiredHandConfiguration());
if (handDesiredConfigurationSubscriber.isNewDesiredConfigurationAvailable()) HandConfiguration handDesiredConfiguration = handDesiredConfigurationSubscriber.pollMessage().getHandDesiredConfiguration();
if (handDesiredConfigurationSubscriber.isNewDesiredConfigurationAvailable()) HandConfiguration handDesiredConfiguration = HandConfiguration.fromByte(handDesiredConfigurationSubscriber.pollMessage() .getDesiredHandConfiguration());
if (handDesiredConfigurationMessageSubscribers.get(robotSide).isNewDesiredConfigurationAvailable()) HandConfiguration desiredHandConfiguration = HandConfiguration.fromByte(handDesiredConfigurationMessageSubscribers.get(robotSide).pollMessage() .getDesiredHandConfiguration()); handJointFingerSetControllers.get(robotSide).clearTrajectories();