1 package org.ocera.orte.demo;
3 import org.ocera.orte.DomainApp;
4 import org.ocera.orte.Subscription;
5 import org.ocera.orte.SubscriptionCallback;
6 import org.ocera.orte.types.MessageData;
7 import org.ocera.orte.types.NtpTime;
8 import org.ocera.orte.types.RecvInfo;
9 import org.ocera.orte.types.SubsProp;
11 public class HokuyoScanSubscribe extends SubscriptionCallback{
13 public final static int IMMEDIATE = 0x02;
14 public final static int BEST_EFFORTS = 0x01;
16 private Subscription sub;
17 private HokuyoView view;
18 private HokuyoScanType hokuyomsg;
19 private DomainApp domainApp;
20 private SubsProp subProps;
21 private boolean isCancelled = true;
23 public HokuyoScanSubscribe(DomainApp domainApp, HokuyoView view) {
25 this.domainApp = domainApp;
27 NtpTime deadline = new NtpTime(10);
28 NtpTime minSeparation = new NtpTime(0);
30 hokuyomsg = new HokuyoScanType(domainApp, "hokuyo_scan");
32 subProps = new SubsProp(hokuyomsg.getTopic(),
43 sub = domainApp.createSubscription(subProps, hokuyomsg, this);
46 public void cancel() {
51 public boolean isCancelled() {
55 public void callback(RecvInfo info, MessageData msg) {
56 view.setData(((HokuyoScanType)msg).hokuyo);