public override void deserialize(MemoryStream stream, std_msgs.msg.Int32 data)
 {
     using (BinaryReader reader = new BinaryReader(stream))
     {
         Halodi.CDR.CDRDeserializer cdr = new Halodi.CDR.CDRDeserializer(reader);
         read(data, cdr);
     }
 }
 public override void serialize(std_msgs.msg.Int32 data, MemoryStream stream)
 {
     using (BinaryWriter writer = new BinaryWriter(stream))
     {
         Halodi.CDR.CDRSerializer cdr = new Halodi.CDR.CDRSerializer(writer);
         write(data, cdr);
     }
 }
        public static int getCdrSerializedSize(std_msgs.msg.Int32 data, int current_alignment)
        {
            int initial_alignment = current_alignment;

            current_alignment += 4 + Halodi.CDR.CDRCommon.alignment(current_alignment, 4);



            return(current_alignment - initial_alignment);
        }
        public void SubscriptionCallbackMessageData()
        {
            int messageData = 12345;

            node.CreateSubscription <std_msgs.msg.Int32>("subscription_test_topic", (msg) => { messageData = msg.Data; });
            std_msgs.msg.Int32 published_msg = new std_msgs.msg.Int32();
            published_msg.Data = 42;
            publisher.Publish(published_msg);
            Rclcs.SpinOnce(node, context, 0.1);

            Assert.That(messageData, Is.EqualTo(42));
        }
        public void SubscriptionQosDefaultDepth()
        {
            int count = 0;

            node.CreateSubscription <std_msgs.msg.Int32>("subscription_test_topic",
                                                         (msg) => { count += 1; });

            std_msgs.msg.Int32 published_msg = new std_msgs.msg.Int32();
            published_msg.Data = 42;

            for (int i = 0; i < 10; i++)
            {
                publisher.Publish(published_msg);
            }

            for (int i = 0; i < 11; i++)
            {
                Rclcs.SpinOnce(node, context, 0.1);
            }

            Assert.That(count, Is.EqualTo(10));
        }
Beispiel #6
0
        public void SubscriptionQosSensorDataDepth()
        {
            int count = 0;
            QualityOfServiceProfile qosProfile = new QualityOfServiceProfile(QosProfiles.SENSOR_DATA);

            node.CreateSubscription <std_msgs.msg.Int32>("subscription_test_topic",
                                                         (msg) => { count += 1; },
                                                         qosProfile);

            std_msgs.msg.Int32 published_msg = new std_msgs.msg.Int32();
            published_msg.data = 42;

            for (int i = 0; i < 6; i++)
            {
                publisher.Publish(published_msg);
            }

            for (int i = 0; i < 11; i++)
            {
                Rclcs.SpinOnce(node, 0.1);
            }

            Assert.That(count, Is.EqualTo(5));
        }
 public static void Copy(std_msgs.msg.Int32 src, std_msgs.msg.Int32 target)
 {
     target.Set(src);
 }
 public static void read(std_msgs.msg.Int32 data, Halodi.CDR.CDRDeserializer cdr)
 {
     data.data = cdr.read_type_2();
 }
 public static void write(std_msgs.msg.Int32 data, Halodi.CDR.CDRSerializer cdr)
 {
     cdr.write_type_2(data.data);
 }
 public static int getCdrSerializedSize(std_msgs.msg.Int32 data)
 {
     return(getCdrSerializedSize(data, 0));
 }