コード例 #1
0
    public unsafe StreamInflateTest Deserialize(byte[] buffer, int startOffset)
    {
        fixed(byte *pb = &buffer[startOffset])
        {
            Float32Value = *(float *)pb;
            Int32Value   = *(int *)(pb + 4);
            Byte8Value   = pb[8];
            BitField8 bitfld = new BitField8(pb[9]);

            IsOk0 = bitfld.Bit0;
            IsOk1 = bitfld.Bit1;
            IsOk2 = bitfld.Bit2;
            IsOk3 = bitfld.Bit3;
            IsOk4 = bitfld.Bit4;
        }

        return(this);
    }
コード例 #2
0
    public unsafe byte[] Serialize(byte[] buffer, int startOffset)
    {
        fixed(byte *pb = &buffer[startOffset])
        {
            *(float *)pb     = Float32Value;
            *(int *)(pb + 4) = Int32Value;
            pb[8]            = Byte8Value;
            BitField8 bitfld = new BitField8(0)
            {
                Bit0 = IsOk0,
                Bit1 = IsOk1,
                Bit2 = IsOk2,
                Bit3 = IsOk3,
                Bit4 = IsOk4
            };

            pb[9] = bitfld.Value;
        }

        return(buffer);
    }