示例#1
0
        public bool Write(DAIIO io, bool skiplength = false)
        {
            try
            {
                if (!skiplength)
                {
                    io.WriteBits(Length, LengthBits);
                }
                if (Variations == null)
                {
                    Variations = new HeadVariation[VariationCount];
                    for (int xb = 0; xb < VariationCount; xb++)
                    {
                        Variations[xb] = new HeadVariation();
                    }
                }
                io.WriteBits(Variations.Length, 0x10);
                for (int i = 0; i < VariationCount; i++)
                {
                    Variations[i].Write(io);
                }

                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
示例#2
0
 public HeadVariations Read(DAIIO io)
 {
     xLength        = io.ReadBit2(LengthBits);
     VariationCount = (short)io.ReadBit2(0x10);
     Variations     = new HeadVariation[VariationCount];
     for (int i = 0; i < VariationCount; i++)
     {
         Variations[i] = new HeadVariation().Read(io);
     }
     return(this);
 }