Alexandria.Platforms.Wii.PackageFile.Open C# (CSharp) Метод

Open() публичный Метод

public Open ( ) : Stream
Результат Stream
        public override Stream Open()
        {
            BinaryReader reader = Parent.Reader;

            switch (Compression) {
                case PackageCompression.None:
                    return new SliceStream(reader.BaseStream, Offset, Size, closeStream: false);

                case PackageCompression.Deflate:
                    lock (reader.BaseStream) {
                        reader.BaseStream.Position = Offset;
                        uint decompressedSize = reader.ReadUInt32();
                        byte[] data = new byte[decompressedSize];
                        Stream compressedStream = new DeflateStream(reader.BaseStream, CompressionMode.Decompress);
                        compressedStream.Read(data, 0, data.Length);
                        return new MemoryStream(data, 0, data.Length);
                    }

                default:
                    throw new NotSupportedException("Unsupported or invalid compression mode " + Compression + ".");
            }
        }