Example #1
0
        public void Unflatten(Parcel parcel)
        {
            Header = parcel.ReadUnmanagedType <GraphicBufferHeader>();

            if (Header.IntsCount != 0x51)
            {
                throw new NotImplementedException($"Unexpected Graphic Buffer ints count (expected 0x51, found 0x{Header.IntsCount:x}");
            }

            Buffer = parcel.ReadUnmanagedType <NvGraphicBuffer>();
        }
Example #2
0
        public void Unflatten(Parcel parcel)
        {
            Header = parcel.ReadUnmanagedType <GraphicBufferHeader>();

            int expectedSize = Unsafe.SizeOf <NvGraphicBuffer>() / 4;

            if (Header.IntsCount != expectedSize)
            {
                throw new NotImplementedException($"Unexpected Graphic Buffer ints count (expected 0x{expectedSize:x}, found 0x{Header.IntsCount:x})");
            }

            Buffer = parcel.ReadUnmanagedType <NvGraphicBuffer>();
        }
Example #3
0
        public GbpBuffer(BinaryReader reader)
        {
            Header = reader.ReadStruct <GraphicBufferHeader>();

            // ignore fds
            // TODO: check if that is used in official implementation
            reader.BaseStream.Position += Header.FdsCount * 4;

            if (Header.IntsCount != 0x51)
            {
                throw new NotImplementedException($"Unexpected Graphic Buffer ints count (expected 0x51, found 0x{Header.IntsCount:x}");
            }

            Buffer = reader.ReadStruct <NvGraphicBuffer>();
        }