示例#1
0
        public static void read(std_msgs.msg.MultiArrayDimension data, Halodi.CDR.CDRDeserializer cdr)
        {
            data.label = cdr.read_type_d();
            data.size  = cdr.read_type_4();

            data.stride = cdr.read_type_4();
        }
 public void Set(MultiArrayLayout other)
 {
     if (other.dim == null)
     {
         dim = null;
     }
     else
     {
         dim = new System.Collections.Generic.List <std_msgs.msg.MultiArrayDimension>(other.dim.Count);
         for (int i1 = 0; i1 < other.dim.Count; i1++)
         {
             if (other.dim[i1] == null)
             {
                 dim.Add(null);
             }
             else
             {
                 std_msgs.msg.MultiArrayDimension newElement = std_msgs.msg.MultiArrayDimensionPubSubType.Create();
                 std_msgs.msg.MultiArrayDimensionPubSubType.Copy(other.dim[i1], newElement);
                 dim.Add(newElement);
             }
         }
     }
     data_offset = other.data_offset;
 }
示例#3
0
        public static void write(std_msgs.msg.MultiArrayDimension data, Halodi.CDR.CDRSerializer cdr)
        {
            cdr.write_type_d(data.label);

            cdr.write_type_4(data.size);

            cdr.write_type_4(data.stride);
        }
示例#4
0
 public override void deserialize(MemoryStream stream, std_msgs.msg.MultiArrayDimension data)
 {
     using (BinaryReader reader = new BinaryReader(stream))
     {
         Halodi.CDR.CDRDeserializer cdr = new Halodi.CDR.CDRDeserializer(reader);
         read(data, cdr);
     }
 }
示例#5
0
 public override void serialize(std_msgs.msg.MultiArrayDimension data, MemoryStream stream)
 {
     using (BinaryWriter writer = new BinaryWriter(stream))
     {
         Halodi.CDR.CDRSerializer cdr = new Halodi.CDR.CDRSerializer(writer);
         write(data, cdr);
     }
 }
示例#6
0
        public static int getCdrSerializedSize(std_msgs.msg.MultiArrayDimension data, int current_alignment)
        {
            int initial_alignment = current_alignment;

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

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


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



            return(current_alignment - initial_alignment);
        }
        public static void read(std_msgs.msg.MultiArrayLayout data, Halodi.CDR.CDRDeserializer cdr)
        {
            int dim_length = cdr.read_type_2();

            data.dim = new System.Collections.Generic.List <std_msgs.msg.MultiArrayDimension>(dim_length);
            for (int i = 0; i < dim_length; i++)
            {
                std_msgs.msg.MultiArrayDimension new_dim = std_msgs.msg.MultiArrayDimensionPubSubType.Create();
                std_msgs.msg.MultiArrayDimensionPubSubType.read(new_dim, cdr);
                data.dim.Add(new_dim);
            }


            data.data_offset = cdr.read_type_4();
        }
示例#8
0
 public static void Copy(std_msgs.msg.MultiArrayDimension src, std_msgs.msg.MultiArrayDimension target)
 {
     target.Set(src);
 }
示例#9
0
 public static int getCdrSerializedSize(std_msgs.msg.MultiArrayDimension data)
 {
     return(getCdrSerializedSize(data, 0));
 }