Beispiel #1
0
 protected override RosMessage_old Create(Type objectType, JObject jObject)
 {
     if (jObject == null)
     {
         return(new RosMessage_old());
     }
     else if (jObject["op"].ToString() == "advertise")
     {
         return(new RosAdvertise_old(jObject["topic"].ToString(), jObject["type"].ToString()));
     }
     else if (jObject["op"].ToString() == "subscribe")
     {
         return(new RosSubscribe_old(jObject["topic"].ToString(), jObject["type"].ToString()));
     }
     else if (jObject["op"].ToString() == "unsubscribe")
     {
         return(new RosUnsubscribe_old(jObject["topic"].ToString()));
     }
     else if (jObject["op"].ToString() == "publish")
     {
         MessageData_old msg = new MessageData_old();
         try
         {
             msg = JsonConvert.DeserializeObject <MessageData_old>(jObject["msg"].ToString(), new MessageDataConverter(jObject["topic"].ToString()));
         }
         catch
         {
         }
         return(new RosPublish_old(jObject["topic"].ToString(), msg));
     }
     else
     {
         return(new RosMessage_old());     // empty dummy
     }
 }
 public RosPublish_old(string topic, MessageData_old messageData)
 {
     ++RosMessage_old._id;
     this.op    = "publish";
     this.id    = "publish:" + topic + ":" + _id;
     this.topic = topic;
     this.msg   = messageData;
     this.latch = false;
 }