コード例 #1
0
        public static int getCdrSerializedSize(rcl_interfaces.msg.ParameterDescriptor 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 += 1 + Halodi.CDR.CDRCommon.alignment(current_alignment, 1);


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

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

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


            current_alignment += 4 + Halodi.CDR.CDRCommon.alignment(current_alignment, 4);
            for (int i0 = 0; i0 < data.floating_point_range.Count; ++i0)
            {
                current_alignment += rcl_interfaces.msg.FloatingPointRangePubSubType.getCdrSerializedSize(data.floating_point_range[i0], current_alignment);
            }

            current_alignment += 4 + Halodi.CDR.CDRCommon.alignment(current_alignment, 4);
            for (int i0 = 0; i0 < data.integer_range.Count; ++i0)
            {
                current_alignment += rcl_interfaces.msg.IntegerRangePubSubType.getCdrSerializedSize(data.integer_range[i0], current_alignment);
            }


            return(current_alignment - initial_alignment);
        }
コード例 #2
0
        public static void read(rcl_interfaces.msg.ParameterDescriptor data, Halodi.CDR.CDRDeserializer cdr)
        {
            data.name = cdr.read_type_d();
            data.type = cdr.read_type_9();

            data.description            = cdr.read_type_d();
            data.additional_constraints = cdr.read_type_d();
            data.read_only = cdr.read_type_7();


            int floating_point_range_length = cdr.read_type_2();

            data.floating_point_range = new System.Collections.Generic.List <rcl_interfaces.msg.FloatingPointRange>(floating_point_range_length);
            for (int i = 0; i < floating_point_range_length; i++)
            {
                rcl_interfaces.msg.FloatingPointRange new_floating_point_range = rcl_interfaces.msg.FloatingPointRangePubSubType.Create();
                rcl_interfaces.msg.FloatingPointRangePubSubType.read(new_floating_point_range, cdr);
                data.floating_point_range.Add(new_floating_point_range);
            }



            int integer_range_length = cdr.read_type_2();

            data.integer_range = new System.Collections.Generic.List <rcl_interfaces.msg.IntegerRange>(integer_range_length);
            for (int i = 0; i < integer_range_length; i++)
            {
                rcl_interfaces.msg.IntegerRange new_integer_range = rcl_interfaces.msg.IntegerRangePubSubType.Create();
                rcl_interfaces.msg.IntegerRangePubSubType.read(new_integer_range, cdr);
                data.integer_range.Add(new_integer_range);
            }
        }
コード例 #3
0
 public override void deserialize(MemoryStream stream, rcl_interfaces.msg.ParameterDescriptor data)
 {
     using (BinaryReader reader = new BinaryReader(stream))
     {
         Halodi.CDR.CDRDeserializer cdr = new Halodi.CDR.CDRDeserializer(reader);
         read(data, cdr);
     }
 }
コード例 #4
0
 public override void serialize(rcl_interfaces.msg.ParameterDescriptor data, MemoryStream stream)
 {
     using (BinaryWriter writer = new BinaryWriter(stream))
     {
         Halodi.CDR.CDRSerializer cdr = new Halodi.CDR.CDRSerializer(writer);
         write(data, cdr);
     }
 }
コード例 #5
0
        public static void write(rcl_interfaces.msg.ParameterDescriptor data, Halodi.CDR.CDRSerializer cdr)
        {
            cdr.write_type_d(data.name);

            cdr.write_type_9(data.type);

            cdr.write_type_d(data.description);

            cdr.write_type_d(data.additional_constraints);

            cdr.write_type_7(data.read_only);

            if (data.floating_point_range == null)
            {
                cdr.write_type_2(0);
            }
            else
            {
                int floating_point_range_length = data.floating_point_range.Count;
                cdr.write_type_2(floating_point_range_length);
                for (int i0 = 0; i0 < floating_point_range_length; i0++)
                {
                    rcl_interfaces.msg.FloatingPointRangePubSubType.write(data.floating_point_range[i0], cdr);
                }
            }
            if (data.integer_range == null)
            {
                cdr.write_type_2(0);
            }
            else
            {
                int integer_range_length = data.integer_range.Count;
                cdr.write_type_2(integer_range_length);
                for (int i0 = 0; i0 < integer_range_length; i0++)
                {
                    rcl_interfaces.msg.IntegerRangePubSubType.write(data.integer_range[i0], cdr);
                }
            }
        }
コード例 #6
0
        public static void read(rcl_interfaces.msg.ParameterEventDescriptors data, Halodi.CDR.CDRDeserializer cdr)
        {
            int new_parameters_length = cdr.read_type_2();

            data.new_parameters = new System.Collections.Generic.List <rcl_interfaces.msg.ParameterDescriptor>(new_parameters_length);
            for (int i = 0; i < new_parameters_length; i++)
            {
                rcl_interfaces.msg.ParameterDescriptor new_new_parameters = rcl_interfaces.msg.ParameterDescriptorPubSubType.Create();
                rcl_interfaces.msg.ParameterDescriptorPubSubType.read(new_new_parameters, cdr);
                data.new_parameters.Add(new_new_parameters);
            }



            int changed_parameters_length = cdr.read_type_2();

            data.changed_parameters = new System.Collections.Generic.List <rcl_interfaces.msg.ParameterDescriptor>(changed_parameters_length);
            for (int i = 0; i < changed_parameters_length; i++)
            {
                rcl_interfaces.msg.ParameterDescriptor new_changed_parameters = rcl_interfaces.msg.ParameterDescriptorPubSubType.Create();
                rcl_interfaces.msg.ParameterDescriptorPubSubType.read(new_changed_parameters, cdr);
                data.changed_parameters.Add(new_changed_parameters);
            }



            int deleted_parameters_length = cdr.read_type_2();

            data.deleted_parameters = new System.Collections.Generic.List <rcl_interfaces.msg.ParameterDescriptor>(deleted_parameters_length);
            for (int i = 0; i < deleted_parameters_length; i++)
            {
                rcl_interfaces.msg.ParameterDescriptor new_deleted_parameters = rcl_interfaces.msg.ParameterDescriptorPubSubType.Create();
                rcl_interfaces.msg.ParameterDescriptorPubSubType.read(new_deleted_parameters, cdr);
                data.deleted_parameters.Add(new_deleted_parameters);
            }
        }
コード例 #7
0
        public void Set(ParameterEventDescriptors other)
        {
            if (other.new_parameters == null)
            {
                new_parameters = null;
            }
            else
            {
                new_parameters = new System.Collections.Generic.List <rcl_interfaces.msg.ParameterDescriptor>(other.new_parameters.Count);
                for (int i1 = 0; i1 < other.new_parameters.Count; i1++)
                {
                    if (other.new_parameters[i1] == null)
                    {
                        new_parameters.Add(null);
                    }
                    else
                    {
                        rcl_interfaces.msg.ParameterDescriptor newElement = rcl_interfaces.msg.ParameterDescriptorPubSubType.Create();
                        rcl_interfaces.msg.ParameterDescriptorPubSubType.Copy(other.new_parameters[i1], newElement);
                        new_parameters.Add(newElement);
                    }
                }
            }

            if (other.changed_parameters == null)
            {
                changed_parameters = null;
            }
            else
            {
                changed_parameters = new System.Collections.Generic.List <rcl_interfaces.msg.ParameterDescriptor>(other.changed_parameters.Count);
                for (int i2 = 0; i2 < other.changed_parameters.Count; i2++)
                {
                    if (other.changed_parameters[i2] == null)
                    {
                        changed_parameters.Add(null);
                    }
                    else
                    {
                        rcl_interfaces.msg.ParameterDescriptor newElement = rcl_interfaces.msg.ParameterDescriptorPubSubType.Create();
                        rcl_interfaces.msg.ParameterDescriptorPubSubType.Copy(other.changed_parameters[i2], newElement);
                        changed_parameters.Add(newElement);
                    }
                }
            }

            if (other.deleted_parameters == null)
            {
                deleted_parameters = null;
            }
            else
            {
                deleted_parameters = new System.Collections.Generic.List <rcl_interfaces.msg.ParameterDescriptor>(other.deleted_parameters.Count);
                for (int i3 = 0; i3 < other.deleted_parameters.Count; i3++)
                {
                    if (other.deleted_parameters[i3] == null)
                    {
                        deleted_parameters.Add(null);
                    }
                    else
                    {
                        rcl_interfaces.msg.ParameterDescriptor newElement = rcl_interfaces.msg.ParameterDescriptorPubSubType.Create();
                        rcl_interfaces.msg.ParameterDescriptorPubSubType.Copy(other.deleted_parameters[i3], newElement);
                        deleted_parameters.Add(newElement);
                    }
                }
            }
        }
コード例 #8
0
 public static int getCdrSerializedSize(rcl_interfaces.msg.ParameterDescriptor data)
 {
     return(getCdrSerializedSize(data, 0));
 }
コード例 #9
0
 public static void Copy(rcl_interfaces.msg.ParameterDescriptor src, rcl_interfaces.msg.ParameterDescriptor target)
 {
     target.Set(src);
 }