Microsoft.Protocols.TestSuites.SharedAdapter.ExGuid.SerializeToByteList C# (CSharp) Method

SerializeToByteList() public method

This method is used to convert the element of ExGuid basic object into a byte List.
public SerializeToByteList ( ) : List
return List
        public override List<byte> SerializeToByteList()
        {
            BitWriter bitWriter = new BitWriter(21);

            if (this.GUID == Guid.Empty)
            {
                bitWriter.AppendUInit32(0, 8);
            }
            else if (this.Value >= 0x00 && this.Value <= 0x1F)
            {
                bitWriter.AppendUInit32(ExtendedGUID5BitUintType, 3);
                bitWriter.AppendUInit32(this.Value, 5);
                bitWriter.AppendGUID(this.GUID);
            }
            else if (this.Value >= 0x20 && this.Value <= 0x3FF)
            {
                bitWriter.AppendUInit32(ExtendedGUID10BitUintType, 6);
                bitWriter.AppendUInit32(this.Value, 10);
                bitWriter.AppendGUID(this.GUID);
            }
            else if (this.Value >= 0x400 && this.Value <= 0x1FFFF)
            {
                bitWriter.AppendUInit32(ExtendedGUID17BitUintType, 7);
                bitWriter.AppendUInit32(this.Value, 17);
                bitWriter.AppendGUID(this.GUID);
            }
            else if (this.Value >= 0x20000 && this.Value <= 0xFFFFFFFF)
            {
                bitWriter.AppendUInit32(ExtendedGUID32BitUintType, 8);
                bitWriter.AppendUInit32(this.Value, 32);
                bitWriter.AppendGUID(this.GUID);
            }

            return new List<byte>(bitWriter.Bytes);
        }