Exemple #1
0
        public static void read(sensor_msgs.msg.PointCloud data, Halodi.CDR.CDRDeserializer cdr)
        {
            data.header = std_msgs.msg.HeaderPubSubType.Create();
            std_msgs.msg.HeaderPubSubType.read(data.header, cdr);


            int points_length = cdr.read_type_2();

            data.points = new System.Collections.Generic.List <geometry_msgs.msg.Point32>(points_length);
            for (int i = 0; i < points_length; i++)
            {
                geometry_msgs.msg.Point32 new_points = geometry_msgs.msg.Point32PubSubType.Create();
                geometry_msgs.msg.Point32PubSubType.read(new_points, cdr);
                data.points.Add(new_points);
            }



            int channels_length = cdr.read_type_2();

            data.channels = new System.Collections.Generic.List <sensor_msgs.msg.ChannelFloat32>(channels_length);
            for (int i = 0; i < channels_length; i++)
            {
                sensor_msgs.msg.ChannelFloat32 new_channels = sensor_msgs.msg.ChannelFloat32PubSubType.Create();
                sensor_msgs.msg.ChannelFloat32PubSubType.read(new_channels, cdr);
                data.channels.Add(new_channels);
            }
        }
 public override void deserialize(MemoryStream stream, sensor_msgs.msg.ChannelFloat32 data)
 {
     using (BinaryReader reader = new BinaryReader(stream))
     {
         Halodi.CDR.CDRDeserializer cdr = new Halodi.CDR.CDRDeserializer(reader);
         read(data, cdr);
     }
 }
 public override void serialize(sensor_msgs.msg.ChannelFloat32 data, MemoryStream stream)
 {
     using (BinaryWriter writer = new BinaryWriter(stream))
     {
         Halodi.CDR.CDRSerializer cdr = new Halodi.CDR.CDRSerializer(writer);
         write(data, cdr);
     }
 }
        public static void read(sensor_msgs.msg.ChannelFloat32 data, Halodi.CDR.CDRDeserializer cdr)
        {
            data.name = cdr.read_type_d();

            int values_length = cdr.read_type_2();

            data.values = new System.Collections.Generic.List <float>(values_length);
            for (int i = 0; i < values_length; i++)
            {
                data.values.Add(cdr.read_type_5());
            }
        }
        public static int getCdrSerializedSize(sensor_msgs.msg.ChannelFloat32 data, int current_alignment)
        {
            int initial_alignment = current_alignment;

            current_alignment += 4 + Halodi.CDR.CDRCommon.alignment(current_alignment, 4) + data.name.Length + 1;

            current_alignment += 4 + Halodi.CDR.CDRCommon.alignment(current_alignment, 4);
            current_alignment += (data.values.Count * 4) + Halodi.CDR.CDRCommon.alignment(current_alignment, 4);



            return(current_alignment - initial_alignment);
        }
Exemple #6
0
        public void Set(PointCloud other)
        {
            std_msgs.msg.HeaderPubSubType.Copy(other.header, header);


            if (other.points == null)
            {
                points = null;
            }
            else
            {
                points = new System.Collections.Generic.List <geometry_msgs.msg.Point32>(other.points.Count);
                for (int i1 = 0; i1 < other.points.Count; i1++)
                {
                    if (other.points[i1] == null)
                    {
                        points.Add(null);
                    }
                    else
                    {
                        geometry_msgs.msg.Point32 newElement = geometry_msgs.msg.Point32PubSubType.Create();
                        geometry_msgs.msg.Point32PubSubType.Copy(other.points[i1], newElement);
                        points.Add(newElement);
                    }
                }
            }

            if (other.channels == null)
            {
                channels = null;
            }
            else
            {
                channels = new System.Collections.Generic.List <sensor_msgs.msg.ChannelFloat32>(other.channels.Count);
                for (int i2 = 0; i2 < other.channels.Count; i2++)
                {
                    if (other.channels[i2] == null)
                    {
                        channels.Add(null);
                    }
                    else
                    {
                        sensor_msgs.msg.ChannelFloat32 newElement = sensor_msgs.msg.ChannelFloat32PubSubType.Create();
                        sensor_msgs.msg.ChannelFloat32PubSubType.Copy(other.channels[i2], newElement);
                        channels.Add(newElement);
                    }
                }
            }
        }
        public static void write(sensor_msgs.msg.ChannelFloat32 data, Halodi.CDR.CDRSerializer cdr)
        {
            cdr.write_type_d(data.name);

            if (data.values == null)
            {
                cdr.write_type_2(0);
            }
            else
            {
                int values_length = data.values.Count;
                cdr.write_type_2(values_length);
                for (int i0 = 0; i0 < values_length; i0++)
                {
                    cdr.write_type_5(data.values[i0]);
                }
            }
        }
 public static void Copy(sensor_msgs.msg.ChannelFloat32 src, sensor_msgs.msg.ChannelFloat32 target)
 {
     target.Set(src);
 }
 public static int getCdrSerializedSize(sensor_msgs.msg.ChannelFloat32 data)
 {
     return(getCdrSerializedSize(data, 0));
 }